打开目录,读取不同的文件并将它们保存到不同的变量Python中

2024-06-26 19:37:11 发布

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

我正在处理本地目录中的文件列表:

docs = ['5d7d3c905deeb7978034cb40.txt','5d7d3c905deeb7978034cb40.txt','5d7d26ae5deeb7978034cab3.txt',
        '5d7d268e5deeb7978034cab2.txt','5dac3ad15deeb749fcbbfeab.txt']

如果我这样做:

for doc in docs:

   for txt in open(doc):

我设法一起打开和阅读课文。但我想把每一个都变成一个不同的变量

目前,我的最佳解决方案是:

abstracts = []

for i in range(len(docs)):

   for doc in docs:

      for txt in open(doc):

          txs = [txt] #each text 

          if txs not in abstracts:
             abstracts.append(txs)

我可以通过使用索引来达到我想要的txs,但是我确信一定有更好的方法来做到这一点


Tags: 文件in目录txtdocs列表fordoc
3条回答

相反,在python中使用dict

import os

content_dict = {}

for f_name in os.listdir("."):
    content_dict[f_name.split(".")[0]] = open(f_name).read()

print(content_dict)

globals()["name_of_your_variable"] = my_variable将根据给定的字符串分配变量。如果您str.split(doc, ".")[0]首先删除句点,它应该可以工作

我会使用一个字典,其中键是文件的名称,值是文件的内容

files = {}
for doc in docs:
    with open(doc, 'r') as f:
        files[doc] = f.read()

相关问题 更多 >