Python can';我不理解行数据集[l.split()[2]]的含义。追加(l)
在执行python脚本时,我无法理解以下函数数据集引用的是csv文件,而数据集是字典,那么这行数据集[l.split()[2]]是什么意思。append(l)的意思是,从未见过对字典执行这种关闭操作Python can';我不理解行数据集[l.split()[2]]的含义。追加(l),python,Python,在执行python脚本时,我无法理解以下函数数据集引用的是csv文件,而数据集是字典,那么这行数据集[l.split()[2]]是什么意思。append(l)的意思是,从未见过对字典执行这种关闭操作 datasets = {'normal': [], 'pneumonia': [], 'COVID-19': []} for l in self.dataset: datasets[l.split()[2]].append(l) self.datasets = [
datasets = {'normal': [], 'pneumonia': [], 'COVID-19': []}
for l in self.dataset:
datasets[l.split()[2]].append(l)
self.datasets = [
datasets['normal'] + datasets['pneumonia'],
datasets['COVID-19'],
]
print(len(self.datasets[0]), len(self.datasets[1]))
self.on_epoch_end()
它将l拆分为一个列表,获取该列表第二个索引处的项,在字典数据集的键中查找该项,然后将l追加到字典中与该键相关联的值列表中。因此我只是使用print语句将其分解。我同意papke的观点,但我想补充一点,您的“数据集”大概是一个“列表”数据结构,该列表数据结构中的每个“元素”都包含一个名字和姓氏(或其他标识符)以及数据集中包含的三个名称之一。所有这一行——datasets[l.split()[2]].append(l)——does将列表中的每个元素拆分为3个字符串,最后一个字符串用于标识它应该在datasets字典中使用的“键”。然后将个人信息添加到数据集字典中 这有用吗
datasets = {'normal': [], 'pneumonia': [], 'COVID-19': []}
dataset = ['John Doe normal', 'Abby Rose pneumonia', 'Sammy Hagar COVID-19']
for l in dataset:
print(l)
print(l.split()[2])
datasets[l.split()[2]].append(l)
print(datasets['normal'])
print(datasets['pneumonia'])
print(datasets['COVID-19'])
这是输出:
John Doe normal
normal
Abby Rose pneumonia
pneumonia
Sammy Hagar COVID-19
COVID-19
['John Doe normal']
['Abby Rose pneumonia']
['Sammy Hagar COVID-19']
您是否尝试添加一些
print
调用来查看l.split()[2]
是什么?您可以尝试将该语句分解为其组成部分,以了解发生了什么。请给我们一个l
的示例,它将使人们能够编写一个简短的解释。欢迎使用堆栈溢出!请阅读。您还可以使用它来帮助逐步可视化代码的执行。