【发布时间】:2020-04-10 20:11:50
【问题描述】:
所以我的任务是将字符串列表转换为元组字典。字典的键和值由空字符串分隔。对于字典,键应该是学生的名字,两个值应该是他们的分数和等级。成绩应该是字符串形式。列表如下:
['John','85 A','90 A+','','David','71 B-','80 A-','','Liz','95 A+','66 C+']
这应该给我一个结果:
{'John':([85,90],['A','A+']),'David':([71,80],['B-','A-']),'Liz':([95,66],['A+','C+']}
我正在自学元组和字典,所以我不知道如何将字符串分成与键对应的两部分。也不知道如何通过''空字符串将它们分组...... 任何帮助将不胜感激:)
【问题讨论】:
-
一些可能对您有所帮助的事情。首先,在列表中,每组数据是列表中的3个元素,后跟一个空格(末尾除外)。其次,对于每组数据,第一个元素是关键。第二个和第三个元素包含数字和字符等级。这可以使用 str.split(" ") 进行拆分,其中结果的第一个元素将是数字等级,第二个元素将是字符等级。要将元素添加到列表中,可以使用 list.append(value)
-
实际上,经过进一步审查,最后两个元素似乎在您的列表中是分开的。这是正确的格式吗? ['66','C+'] 还是 ['66 C+']
-
感谢您的帮助,我很困惑,因为我不知道如何拆分每组数据。像我如何使用空字符串来拆分它们?
-
我的错。已经修好了。
标签: python string dictionary tuples