重新定义变量在函数中间不起作用吗?

时间:2019-01-09 07:50:04

标签: python

sequence = [1, 3, 2, 1]

def almostIncreasingSequence(sequence):
    a = sequence
    limit = len(a) - 1
    limit2 = len(a) - 2
    i = 0
    print(a)
    for x in range(limit):
        **a = sequence**
        del a[x]
        print(a)
        whetherFalse = 0
        while i != limit2:
            if a[i] < a[i + 1]:
                pass
            else:
                whetherFalse = 1
            i = i + 1
        if whetherFalse == 0:
            return True
    if x == limit:
        return False

print(almostIncreasingSequence(sequence))

(在这里,名称sequence是固定的,因此我创建了另一个列表a,该列表更易于编写...)

上面是我的代码,该代码旨在检查是否可以通过从数组中删除不超过一个元素来获得严格递增的序列。

在我看来,对于每个for序列,a(这意味着将从原始“序列”列表中删除每个不同元素的新列表)应该初始化为原始a ,即原始的sequence。 (我的意思是,用** **代码)

但似乎这尚未初始化,请在序列的下一个“”处以“ a”开始,其中一个元素已被删除。因此,最终,越来越多的元素将被删除。我的代码有任何错误吗?

感谢您阅读。

0 个答案:

没有答案
相关问题