如何在python中创建运行时文件句柄?

2024-09-28 01:25:53 发布

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

我想把一个文件分成5个文件,第一行存储在part1中,第二行存储在part2中

是这样的

#1 #6  ... to part1
#2 #7  ... to part2
#3 #8  ... to part3
#4 #9  ... to part4
#5 #10 ... to part5

我需要为file1到file5创建5个文件句柄,但似乎我不能使用(part+i)作为文件句柄,我不知道应该转换为哪种类型?串?在

如何解决这个问题?谢谢

这是我的密码

^{pr2}$

Tags: 文件to密码类型句柄file1part2part1
2条回答

使用列表。在

files = []
 ...
files.append(open(...))
 ...
files.append(open(...))
 ...

你的问题与文件句柄无关,与试图动态创建变量无关。在

答案是:不要那样做。Keep your data out of your variable names。在

请改用字典或列表;以下列表理解将创建打开文件对象的列表:

files = [open(os.path.join(sys.argv[2], "part{}".format(i + 1)), "w")
         for i in range(sys.argv[3])]

现在您可以寻址files[0]files[1],更好的是,在这个列表中循环以访问所有打开的文件对象files[-1]使您可以轻松访问最后一个file对象,等等

现在循环看起来也简单多了,因为现在可以使用基于0的索引:

^{pr2}$

相关问题 更多 >

    热门问题