my_list = ['a','b','c']
def func(input):
for i in input:
print i
print func(my_list)
输出
a
b
c
None
我不想要'无',所以我如何能够执行一行代码来返回输入列表中的项目?
我试过了:
return for i in input: print i
但它没有用,因为return语句不能像那样工作
答案 0 :(得分:5)
您正在打印来自func
none
的返回代码。只需在没有func(my_list)
的情况下致电print
。
答案 1 :(得分:2)
默认情况下,如果函数在没有返回的情况下结束,则返回None
。因此,由于return
中没有func
个语句,因此在调用时会返回None
。
此外,通过使用print func(my_list)
,您告诉Python打印func
返回的内容,即None
。
要解决您的问题,只需删除print
并执行:
func(my_list)
另外,如果my_list
不是很长,那么你根本不需要一个函数去做你正在做的事情。只需使用字符串的join
方法,如下所示:
>>> my_list = ['a','b','c']
>>> print "\n".join(my_list)
a
b
c
>>>
答案 2 :(得分:1)
您无需致电print func(my_list)
- 只需执行:
func(my_list)