我有元组列表:
stack = [('Гидротехническое оборудование',
'Гидравлическая турбина',
'Рабочее колесо',
'Кавитационный износ Механические повреждения Трещины на лопастях',
'0'),
('Гидротехническое оборудование',
'Гидравлическая турбина',
'Рабочее колесо',
'Кавитационный износ Механические повреждения Трещины на лопастях',
'1'),
('Гидротехническое оборудование',
'Гидравлическая турбина',
'Рабочее колесо',
'Кавитационный износ Механические повреждения Трещины на лопастях',
'1'),
('Гидротехническое оборудование',
'Гидравлическая турбина',
'Рабочее колесо',
'Кавитационный износ Механические повреждения Трещины на лопастях',
'1'),
('Гидротехническое оборудование',
'Гидравлическая турбина',
'Рабочее колесо',
'Кавитационный износ Механические повреждения Трещины на лопастях',
'1')]
有必要从每个元组中删除数字字符串。所以,最终结果应该如下:
[('Гидротехническое оборудование','Гидравлическая турбина','Рабочее колесо','Кавитационный износ Механические повреждения Трещины на лопастях'),('Гидротехническое оборудование','Гидравлическая турбина','Рабочее колесо','Кавитационный износ Механические повреждения Трещины на лопастях'),('Гидротехническое оборудование','Гидравлическая турбина','Рабочее колесо','Кавитационный износ Механические повреждения Трещины на лопастях'),('Гидротехническое оборудование','Гидравлическая турбина','Рабочее колесо','Кавитационный износ Механические повреждения Трещины на лопастях'),('Гидротехническое оборудование','Гидравлическая турбина','Рабочее колесо','Кавитационный износ Механические повреждения Трещины на лопастях')]
以下代码不起作用:
final_list = [item for item in stack for x in item if x.isdigit() == False]
最佳答案
您可以使用 filter()
和 .isnumeric()
过滤掉每个非数字字符串,然后使用列表理解将其应用于每个元组:
result = [tuple(filter(lambda x: not x.isnumeric(), item)) for item in stack]
print(result)
您还可以用 list()
和 map()
替换列表理解:
result = list(map(lambda x: tuple(filter(lambda y: not y.isnumeric(), x)), stack))
print(result)
输出:
[('Гидротехническое оборудование', 'Гидравлическая турбина', 'Рабочее колесо', 'Кавитационный износ Механические повреждения Трещины на лопастях'),
('Гидротехническое оборудование', 'Гидравлическая турбина', 'Рабочее колесо', 'Кавитационный износ Механические повреждения Трещины на лопастях'),
('Гидротехническое оборудование', 'Гидравлическая турбина', 'Рабочее колесо', 'Кавитационный износ Механические повреждения Трещины на лопастях'),
('Гидротехническое оборудование', 'Гидравлическая турбина', 'Рабочее колесо', 'Кавитационный износ Механические повреждения Трещины на лопастях'),
('Гидротехническое оборудование', 'Гидравлическая турбина', 'Рабочее колесо', 'Кавитационный износ Механические повреждения Трещины на лопастях')
关于python - 元组列表(从元组中删除特殊项目),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71732978/