我有一个包含数字的列表,如下所示:['1,2,3,4', '5,6,7,8', '9,10,11,12']我想按列形成一个列表。例如:1,5,9 in single list 我写了一个python代码:def readcolumn(userlist,columnName): for x in userlist: columnList.append(x[columnName]) return columnListdata1=readcolumn(myList,1)print(data1)当我尝试打印数据时。输出如下:[',', ',', ',']因为索引“1”处的值是“,”。我试图去除“,”。但是对于两位数,它只打印第一个字符,例如“10”它只打印“1”。我该如何解决这个问题
1 回答

人到中年有点甜
TA贡献1895条经验 获得超7个赞
您有一个包含三个字符串的一维列表。没有列。您需要将其拆分为子列表。然后,您可以通过简单的理解获得列:
l = ['1,2,3,4', '5,6,7,8', '9,10,11,12']
m = [item.split(',') for item in l]
[item[1] for item in m]
#['2', '6', '10']
当然,如果您想一步完成并丢弃 2D 列表,您可以:
l = ['1,2,3,4', '5,6,7,8', '9,10,11,12']
[item.split(',')[1] for item in l]
#['2', '6', '10']
添加回答
举报
0/150
提交
取消