我有一些元组列表:
a = [('3 232', 'm3', 'some_value'), ('1', 'm', 'some_value'), ('90', 'cm3', 'some_value')]
我尝试按每个元组中的第一个元素对其进行排序:
sorted(a, key=lambda x: int(x.strip()[0]))
但是我有 AttributeError:
AttributeError: 'tuple' object has no attribute 'strip'
为什么会这样以及如何删除每个第一个元组元素中的空格?
我会很感激你的帮助
请您参考如下方法:
你的意思是 x[0].strip(),而不是 x.strip()[0],但即使那样也不会达到你的预期。
strip 从字符串的开头和结尾删除字符。你应该使用replace:
x[0].replace(' ', '')
整体而言:
sorted(a, key=lambda x: int(x[0].replace(' ', ''))
