尝试对元组进行排序时,如何使用split()运算符?

MrO*_*Sir 1 python

我有一些元组列表:

a = [('3 232', 'm3', 'brutto'), ('1', 'm', 'netto_brutto_unknown'), ('90', 'cm3', 'netto_brutto_unknown')]
Run Code Online (Sandbox Code Playgroud)

我尝试按每个元组中的第一个元素对其进行排序:

sorted(a, key=lambda x: int(x.strip()[0]))
Run Code Online (Sandbox Code Playgroud)

但是我有AttributeError:

AttributeError:“ tuple”对象没有属性“ strip”

为什么这样做以及如何删除每个第一个元组元素中的空格?

我会很感激的

Dee*_*ace 7

您的意思x[0].strip()不是x.strip()[0],但即使那样也无法达到您的期望。

strip从字符串的开头和结尾删除字符。您应该使用replace

x[0].replace(' ', '')
Run Code Online (Sandbox Code Playgroud)

总体而言:

sorted(a, key=lambda x: int(x[0].replace(' ', ''))
Run Code Online (Sandbox Code Playgroud)

  • @MrOldSir如果可以解决您的问题,请单击其答案旁边的对勾。 (2认同)