0

我必须打开几个文件,比如 50 个名为 1.txt、2.txt、3.txt 等的文件,并且必须一一阅读。我可以阅读它们的方式是

data = loadtxt("1.txt", float)

这样文件名就被用作字符串,我不能使用任何循环来读取它们。而且单独读取每个文件非常繁琐。有没有办法使用循环来读取所有文件?谢谢。

4

2 回答 2

4

您可以轻松地构造一个包含整数的字符串:

>>> '{0}.txt'.format(1)
'1.txt'

循环执行:

for i in range(50):
    data = loadtxt('{0}.txt'.format(i + 1), float)

鲍勃是你的叔叔。

于 2012-09-13T13:05:33.350 回答
3

很容易:

for i in range(1,51):
   data = loadtxt('{0}.txt'.format(i),float)
   #process data here.

如果您更喜欢 c 风格的字符串格式,老式的字符串插值也可以工作:

datafile = '%d.txt' % (i)
于 2012-09-13T13:05:14.923 回答