实际上它必须很简单,但是我找不到解决方法。
我有一个目录。让我们称其为包含txt文件(lycris2,歌词)的“文件”
我想遍历该目录并打印出每个txt.file的内容
这是我的代码:
import os
for filename in os.listdir("files"):
f = open(filename, 'r')
content = f.read()
print(content)
但是它不起作用。这是我看到的错误消息:
C:\Users\Juan\.virtualenvs\PyQT\Scripts\python.exe "C:/Users/Juan/Desktop/Python Kurs/Kursmaterialien/PyQT/venvy library root/testmain.py"
Traceback (most recent call last):
File "C:/Users/Juan/Desktop/Python Kurs/Kursmaterialien/PyQT/venvy library root/testmain.py", line 4, in <module>
f = open(filename, 'r')
FileNotFoundError: [Errno 2] No such file or directory: 'lyrcis2'
有解决方案吗?
答案 0 :(得分:3)
文件处理程序需要当前目录中的完整相对路径:
import os
for filename in os.listdir("files"):
f = open(os.path.join("files", filename), 'r')
content = f.read()
print(content)
答案 1 :(得分:0)
对于Python 3用户,有pathlib
:
import pathlib
for path in pathlib.Path('files').iterdir():
if not path.is_file():
continue
with path.open() as f:
print(f.read())