所以我的代码基本上是这样的:
def setup_list(file_name):
for item in csv file:
list = []
list.append(item)但是,我希望能够在每次运行函数时为list分配不同的名称。例如list_one,list_two等。我怎么能做到这一点?
来自评论:
最终目标也是将几个csv文件的内容存储在几个具有不同名称的列表中。这些文件在同一个文件中包含鸟类、日期和位置。
我有几个文件,因为用户可能有几个他们希望创建的鸟类列表(一个是在他们的县/州看到的鸟类,另一个是全世界看到的鸟类的文件等等)。
发布于 2019-01-22 18:32:05
要将多个文件及其内容读入列表,请执行以下操作:
创建数据:
with open("birds1.txt","w") as f:
f.write(f"""
Bird,Date,Location
Amsel,1.1.2018,Amerika
Drossel,2.1.2018,Alaska
Fink,3.1.2018,Pacific
""")
with open("birds2.txt","w") as f:
f.write(f"""
Bird,Date,Location
Eagle,1.1.2018,Afrika
Milan,2.1.2018,Eurasia
AngryBird,3.1.2018,Rainbow Meadow
""")负载数据:
import csv
def load_into_dict(d,filename):
with open(filename) as f:
csv_reader = csv.reader(f)
name = filename.split(".")[0]
d[name] = []
for row in csv_reader:
if row:
d[name].append(row)
data = {}
for n in ["birds1.txt","birds2.txt"]:
load_into_dict(data,n)对加载数据的使用:
print(data)
print(data["birds1"][1])输出:
{'birds1': [['Bird', 'Date', 'Location'], ['Amsel', '1.1.2018', 'Amerika'],
['Drossel', '2.1.2018', 'Alaska'], ['Fink', '3.1.2018', 'Pacific']],
'birds2': [['Bird', 'Date', 'Location'], ['Eagle', '1.1.2018', 'Afrika'],
['Milan', '2.1.2018', 'Eurasia'], ['AngryBird', '3.1.2018', 'Rainbow Meadow']]}
['Amsel', '1.1.2018', 'Amerika']文档:
发布于 2019-01-22 18:03:28
您可以为列表创建一个字典,以所需的名称作为键,将列表作为值。
dictOfLists = {}
def setup_list(file_name, list_name):
l = []
for item in csv file:
l.append(item)
dictOfLists.update({list_name : l})重命名变量通常是不实际的或不可取的,在大多数情况下不应该这样做。
https://stackoverflow.com/questions/54313894
复制相似问题