【问题标题】:NameError when appending to a List inside a function (Python)附加到函数内的列表时出现 NameError (Python)
【发布时间】:2019-04-17 03:14:52
【问题描述】:

为什么我在运行下面的代码时收到错误NameError: name 'l1' is not defined,将 l1 和 l2 空列表放在函数之外是否允许我附加/使用返回语句?

def function():
    l1 = []
    l2 = []
    for x in range(1):
        if 3 > 2:
            l1.append(1)
            l2.append(2)
    return l1, l2

call = function()
print(l1)
print(l2)

【问题讨论】:

  • l1 和 l2 没有在函数外部定义(类似于l1=something)。另一方面,call 是一个包含函数的两个结果的元组。也许您想将其更改为l1, l2 = function(),或者保持原样,而不是print(call[0]) 和print(call[1])。

标签: python list function


【解决方案1】:

你不能这样称呼它,l1和l2是未定义的,所以需要这样做:

def function():
    l1 = []
    l2 = []
    for x in range(1):
        if 3 > 2:
            l1.append(1)
            l2.append(2)
    return l1, l2

l1,l2 = function()
print(l1)
print(l2)

输出:

[1]
[2]

【讨论】:

    猜你喜欢
    • 2019-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多