【问题标题】:Why does this code print nothing?为什么这段代码什么也不打印?
【发布时间】:2018-07-18 12:15:20
【问题描述】:

我刚开始学习python3,不明白为什么代码不起作用。

我为它写了一个函数和三个测试。这是函数应该做的:

  • 在数组 A 中从 0 到 N-1 索引搜索数字 x 包括在内。
  • 返回数组 A 中元素 x 的索引。 或者 -1,如果没有。
  • 如果数组中有几个相同的元素,等于 x, 然后返回第一个帐户的索引。
def array_search(A:list, N:int, x:int):
    for k in range(N):
        if A[k] == x:
            return k
    return -1

def test_array_search():
    A1 = [1, 2, 3, 4, 5]
    m = array_search(A1, 5, 8)
    if m  == -1:
        print("#test1 - ok")
    else:
        print("#test1 - fail")

    A2 = [-1, -2, -3, -4, -5]
    m = array_search(A2, 5, -3)
    if m  == 2:
        print("#test1 - ok")
    else:
        print("#test1 - fail")

    A3 = [10, 20, 30, 10, 10]
    m = array_search(A3, 5, 10)
    if m  == 0:
        print("#test1 - ok")
    else:
        print("#test1 - fail")    


    test_array_search()

【问题讨论】:

  • 在底部取消缩进test_array_search()
  • 函数调用在函数内部,去掉底部的缩进
  • @roganjosh 谢谢,写一个答案,我会接受的 =)

标签: python python-3.x


【解决方案1】:

您实际上并没有在外部调用 test_array_search 函数。所以,在外面写test_array_search函数就行了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-01
    • 1970-01-01
    相关资源
    最近更新 更多