如何对压缩列表的 N 个元素进行拆分

问题描述

我有一个压缩列表,每个元组最初具有相同的长度,如下所示:

[('MATH 441','GREAT,LOTS OF HOMEWORK,FUNNY'),(CSCI 519,'AWFUL,BORING')...]

我的目标是基于逗号将元组的第二个元素拆分为单个元素。从这里开始,每个元组可能有不同的长度,因此,我想检查给定的元组是否满足特定长度,如果不满足,则在元组中输入一个“NAN”元素。

我想我们必须创建一个“列表列表”,因为元组是不可变的,所以这是我迄今为止创建的。

master = list(zip(course_codez,lst))
#to make it a list of list,not a list of tuples
master_two = [list(a) for a in zip(course_codez,lst)]
for i in master_two:
    i[1].split(",")
        

这是思考过程,但我不完全确定,希望得到任何帮助。

谢谢

解决方法

split() 不会(不能)就地修改元素,您需要将结果分配回列表元素。

i[1] = i[1].split(",")

您可以直接在列表推导式中执行此操作。

master_two = [(code,comment.split(",")) for code,comment in zip(course_codez,lst)]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...