Python 如何更改列表中可转换为整数的每个元素
我有一个简单的列表Python 如何更改列表中可转换为整数的每个元素,python,python-3.x,string,list,Python,Python 3.x,String,List,我有一个简单的列表 a = [['A','10'],['B','30']] 如何更改它,以便只有那些可以转换为整数的元素才能转换为整数 所以我希望得到 a = [['A',10],['B',30]] 您可以只使用如下所示的try-except块 def try_convert_int(val): try: return int(val) except ValueError: return val a = [['A','10'],['B','3
a = [['A','10'],['B','30']]
如何更改它,以便只有那些可以转换为整数的元素才能转换为整数
所以我希望得到
a = [['A',10],['B',30]]
您可以只使用如下所示的try-except块
def try_convert_int(val):
try:
return int(val)
except ValueError:
return val
a = [['A','10'],['B','30']]
out = [[try_convert_int(item) for item in row] for row in a]
print(out) #[['A', 10], ['B', 30]]
内部子列表的大小是否始终为2?并且总是要在索引1处转换为整数的字符串吗?如果您的数字总是正整数,
new_a=[[int(v)If v.isdigit()else v for v in l]for l in a]