使用python访问连续的250个文件

2024-10-03 06:22:45 发布

您现在位置:Python中文网/ 问答频道 /正文

在DOS或windows上的批处理文件中,我们可以访问多个连续文件fieldgen1.txt、fieldgen2.txt等,如下所示:

for /L %%i in (1,1,250) do (
    copy fieldgen%%i.txt hk.ref
    Process the file and go to next file.

我有250个文件名,如fieldgen1.ref、fieldgen2.ref等。现在我想访问一个文件,处理该文件,并在处理完成时访问另一个文件。我知道Python喜欢这样

with open('fieldgen1.txt', 'r') as inpfile, with open('fieldgen2.txt', 'r') as inpfile:

这样我只能访问两个文件。在python中有没有访问多个连续文件的短方法?你知道吗


Tags: 文件intxtrefforwindowsaswith
3条回答

你可以这样做

import os

files = os.listdir(".")

for f in files:
  print (str(f))

这将打印当前运行目录中的所有文件和目录。一旦你有了文件名,你就可以用它来处理内容。你知道吗

是的,您可以访问和处理python中的连续文件

for i in range(1, 251):
    with open('fieldgen%s.txt' % i, 'r') as fp:
        lines = fp.readlines()
        # Do all your processing here

代码将循环并读取每个文件。然后,您可以在阅读完所有行之后进行处理。您没有提到是否需要在处理过程中更改文件,所以我只包括读取部分。你知道吗

如果确实需要写回文件,请确保在所有处理完成后这样做。你知道吗

我将考虑使用字符串模板。你知道吗

for i in range(1,251):
    with open('fieldgen'+str(i)+'.txt', 'r') as fp:
        #Parsing your file

或者您可以使用列表:

files = [open('fieldgen'+str(i)+'.txt', 'r') for i in range(1,251)]
for file in files:
    #Parsing your file

相关问题 更多 >