1

我有这段代码:

import os

def listdir(path):
    print(os.listdir(path))
    print '\n'.join(os.listdir(path))

返回

['.idea', 'commands', 'testfile.py', '__pycache__']
.idea
commands
testfile.py
__pycache__
None

我不明白为什么我在最后一行得到 None 值?感谢您的任何建议。

4

2 回答 2

3

当你打电话时listdir,你是否试图打印它的返回值?

print listdir(path)

listdir不返回值,所以如果你这样做了,print语句将打印None. 省略print

listdir(path)
于 2013-12-31T15:02:22.460 回答
1

如果没有 return 语句,则函数隐式返回None

>>> def func():
...     2013 # no value is being returned
...
>>> func()
>>> func() is None
True

>>> def func():
...     return 2013
...
>>> func()
2013
于 2013-12-31T15:00:08.780 回答