我试图使用下面显示的代码读取我在文件夹中的几个文件的前20个字符:
import os
path = raw_input("Enter the path: ")
listing = sorted(os.listdir(path))
for infile in listing:
print "current file is: " + infile
with open(infile) as fl: # Use fl to refer to the file object
#print infile
data = fl.read(20)
print data
fl.close()
但是我收到了这个错误:
Enter the path: /home/david/dat_files_new
current file is: raw_57_0000.dat
# == pyFAI calibrati
current file is: raw_57_0001.dat
---------------------------------------------------------------------------
IOError Traceback (most recent call last)
<ipython-input-53-7292764186b6> in <module>()
7 for infile in listing:
8 print "current file is: " + infile
----> 9 with open(infile) as fl: # Use fl to refer to the file object
10 #print infile
11 data = fl.read(20)
IOError: [Errno 2] No such file or directory: 'raw_CL20_57_0001.dat'
如果我评论with语句及其下面的所有内容,我可以列出目录中的所有文件。
这就是代码的作用:
对目录中的文件进行排序 - &gt;完成
打印第一个文件的名称 - &gt;完成
读取第一个文件的前20个字符 - &gt;完成
打印seconde文件的名称 - &gt;完成
读取第二个文件的前20个字符 - &gt;失败
读取第二个文件的前20个字符