我有一个包含十个文件的文件夹,我想循环播放.当我打印出文件的名称时,我的代码工作正常:
import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
for f in filenames:
print(f)
Run Code Online (Sandbox Code Playgroud)
哪个印刷品:
1
2
3
4
5
6
7
8
9
10
Run Code Online (Sandbox Code Playgroud)
但是如果我尝试在循环中打开文件,我会收到IO错误:
import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
for f in filenames:
log = open(f, 'r')
Traceback (most recent call last):
File "/home/des/my_python_progs/loop_over_dir.py", line 6, in <module>
log = open(f, 'r')
IOError: [Errno 2] No such file or directory: '1'
>>>
Run Code Online (Sandbox Code Playgroud)
我是否需要在循环内部传递文件的完整路径open()?
我想从文本文件的第一个空行开始解析文本文件。每个文本文件的前几行都有我在搜索中不需要的 URL,并且每个文件的标题长度略有不同。每个文件的标题和文本正文之间都有一个空行,因此我想在空行之后开始正则表达式搜索
我知道如何找到空行,但不知道如何获取它们的索引。
myfile = open(mydir,'r')
for line in myfile:
if line in ['\n', '\r\n']:
print 'Found it'
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏