我有一个包含数百个.json
个文件的文件夹。
如何一次打开所有这些文件?
我试过了:
for i in os.listdir('C:/Users/new'):
if i.endswith('.json'):
files.append(open(i).read)
But I got this error:
FileNotFoundError:[Errno 2]没有这样的文件或目录:
答案 0 :(得分:1)
i
只是文件名。你应该给出程序的完整路径。
示例:首先将文件设为stackoverflow.json
您尝试使用文件名打开,例如:
open('stackoverflow.json', 'r')
你应该做的是:
open('C:/Users/new/stackoverflow.json', 'r')
所以代码应该这样做:
files = []
base_path = 'C:/Users/new'
for i in os.listdir(base_path):
if i.endswith('.json'):
full_path = '%s/%s' % (base_path, i)
files.append(open(full_path, 'r', encoding='utf-8').read())
print("starting to print json documents...")
for single_file in files:
print(single_file)
print("printing done")
编辑:正如@khelwood所述,您还应将read
替换为read()
。