我有一个简短的问题。 我尝试使用
导入“ os.listdir”import os.listdir
但是,它显示了如下错误。
Exception has occurred: ModuleNotFoundError
No module named 'os.listdir'; 'os' is not a package
File "/Users/chanwooahn/Google Drive/Projects/The Economist/main.py", line 1, in
<module>import os.listdir
File "/anaconda3/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/anaconda3/lib/python3.6/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/anaconda3/lib/python3.6/runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
我认为'os'是python的内置接口。 我已经更新了'conda'和'python',但是仍然给了我同样的错误。 有什么可能的原因吗?
答案 0 :(得分:2)
是的,您应该使用:
from os import listdir
listdir不是软件包;)
答案 1 :(得分:1)
使用:
import os
all_files = os.listdir("C:\\Sample")
print(all_files)
答案 2 :(得分:1)
import
的参数必须是程序包名称。 os
不包含名为listdir
的程序包,因此您不能导入它。
您可以做的是
import os
os.listdir('.')
或仅导入listdir
:
from os import listdir
listdir('.')
或略有改变:
from os import listdir as ld
ld('.')
Python标准库中存在一些可变性,其中某些包确实包含子包,您可以甚至必须专门import
来打包子包;但是listdir
只是os
包中的一个函数,而不是一个包本身。