[英]Python lists, modules, and loops (syntax error)
目前正在学习Python,但是我对一个特定的问题有些困惑。
我需要使用循环而不使用任何内置函数来打印列表的长度。
我了解以下内容在我输入时有效:
listLength = 0
list1 = ['a', 'b', 'c', 'd']
for y in list1:
listLength += 1
print(listLength)
但是问题是给了我们一个我们无法编辑的文件:
import function_lists
list1 = ['a', 'b', 'c', 'd']
print("Length of list:", function_lists.listLength(list1))
在名为function_lists的可编辑文件中,我这样做:
def length(a_list)
length = 0
for y in list1:
listLength += 1
语法错误:未定义list1-从我能看出来的是我对模块的工作方式有误解,难道不应该通过import function_lists
将list1从不可编辑的文件中拉出来,使其起作用吗?
我会问我的实习老师,但直到本周晚我什么都没有。
您应该使用参数名称a_list
,而不要使用传递的参数list1
。 @Andy G指出,在声明函数时,需要以冒号结尾声明(例如def function_name(args):
:)。 此外,函数的默认返回值为None,因此,正如@RiaD指出的那样,您还应该返回length
变量。
def length(a_list)
length = 0
for y in list1:
listLength += 1
应该
def length(a_list):
length = 0
for y in a_list:
length += 1
return length
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.