请问Python如何删除list某两列以及数据数据类型

lista = [['0624', 'b', 'nan', 'nan', 'nan','nan', '1', 'true', '2', '0', '1', 'ture', '2', '0'], ['0625', 'b', 'nan','nan', 'nan', 'nan', '2', ' ture', '1', '0', '2', 'ture', '2', '0'], ['0626', 'b','nan', 'nan', 'nan', 'nan', '3', ' ture', '1', '0', '3', 'ture', '1', '0'], ['0627','b', 'nan', 'nan', 'nan', 'nan', '4', ' ture ', '1', '0', 'nan', 'nan', 'nan','nan']]
要求:将第3、7、11列中具有最大数的列作为新列表listb的第3列,lista中其他列分别依次存入listb中的第1、2、4...

第1个回答  推荐于2017-12-16
def str2num(s):
try:
return int(s)
except:
return None

lista = [
['0624', 'b', 'nan', 'nan', 'nan','nan', '1', 'true', '2', '0', '1', 'ture', '2', '0'],
['0625', 'b', 'nan','nan', 'nan', 'nan', '2', ' ture', '1', '0', '2', 'ture', '2', '0'],
['0626', 'b','nan', 'nan', 'nan', 'nan', '3', ' ture', '1', '0', '3', 'ture', '1', '0'],
['0627','b', 'nan', 'nan', 'nan', 'nan', '4', ' ture ', '1', '0', 'nan', 'nan', 'nan','nan']
]

# 要求:将第3、7、11列中具有最大数的列作为新列表listb的第3列,lista中其他列分别依次存入listb中的第1、2、4...
listb = []
for item in lista:
item11 = str2num(item.pop(10))
item7 = str2num(item.pop(6))
item3 = str2num(item.pop(2))
newitem3 = str(max([item3,item7,item11]))
item.insert(2, newitem3)
listb.append(item)本回答被提问者采纳
相似回答