Python os.listdir()的替代方法是什么?

时间:2018-11-08 17:17:19

标签: python python-3.x python-2.7

当我在python中执行以下命令时,控制台显示错误 注意:我正在 Windows 10环境

>>> os.listdir()

Traceback (most recent call last):

  File "<stdin>, line 1, in <module>

TypeError: listdir() takes exactly 1 argument (0 given)

4 个答案:

答案 0 :(得分:4)

您需要将listdir()与以下路径一起使用:

#!/usr/bin/python

import os, sys

# Open a file
path = "/var/www/html/"
dirs = os.listdir( path )

# This would print all the files and directories
for file in dirs:
  print file

答案 1 :(得分:1)

我认为您想使用

os.listdir(os.getcwd())

这会列出当前的工作目录(os.getcwd()返回路径)

答案 2 :(得分:1)

TypeError:listdir()恰好接受1个参数(给定0个参数) 当您在Jupyter Notebook中运行相同的命令时,通常不会发生,因为启动笔记本时路径变量已经确定。但是您正在运行.py脚本,可以按以下方式对其进行排序。

import os             #importing library 
path=os.getcwd()      #will return path of current working directory in string form
a=os.listdir(path)    #will give list of items in directory at <path> location same as bash command "ls" on a directory

或者您可以手动指定路径为

import os
path='/home/directory1/sub_directory'
a=os.listdir(path)

您可以打印以结帐

print(a)

答案 3 :(得分:0)

使用os.listdir()代替os.walk()是更好的选择-

path = 'set/to/your/path'
filetups = [(r,f) for r,d,f in os.walk(path)]
print([i+'/'+k for i,j in filetups for k in j])

这应该为您提供要浏览的路径下文件路径的完整列表。