希望list中的名称与使用for循环的python中的文件名称相同



我有一个列表下面的名称列表,并希望使用循环使用它作为文件名。

name = [tina, vans, john, sam, victory]

使用for循环,我想打开下面的文件列表

for i in name:
   a=open('tina.txt')
   b=open('vans.txt')
   c=open('john.txt')
   d=open('sam.txt')
   e=open('victory.txt')

对不起,我知道这不是正确的代码,但我想做这样的事情,为我的代码是。有人能帮我把它弄对吗?由于

尝试以下操作(假设'a'的作用域在每次迭代后结束,否则请告诉我):

for i in name:
    a = open(f'{i}.txt')

如果你有一个列表列表(根据你在评论中的问题),你可以这样做:

for i in name:
    for k in i:
        a = open(f'{k}.txt')

我不确定这是否是你想要做的,但这里有一些东西可以开始:

names = ['tina', 'vans', 'john', 'sam', 'victory']
opened_files = []
for next_name in names:
    opened_files.append(open(f'{next_name}.txt', 'r')) # 'r' in case you just want to read

那么,基本上你需要这个数组:

names = ['tina', 'vans', 'john', 'sam', 'victory']

然后循环

for name in names:
    with open('{name}.txt'.format(name=name), 'r') as file:
         # do something 

    
name = [tina, vans, john, sam, victory]

可以使用for循环遍历列表。然后,您可以使用f-strings打开文件。

for new in name:
    with open(f'{new}.txt','a') as file: 
        #some.code

最新更新