从元组列表中的列表中剥离空白?

2024-06-16 11:18:54 发布

您现在位置:Python中文网/ 问答频道 /正文

enter image description here

我想去掉元组中列表中的空白,我该怎么做???例如,在第一个元组的列表中,“Bakery”有一个空格,我想让它成为“Bakery”

for i in features:
  for j in i[1]:
    j = j.strip(' ')

我试过但失败了。你知道吗

features = (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Batagram', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44']), (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Bhalwal', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44']), (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Burewala', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44']), (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Chakwal', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44'])


Tags: foodfast元组coffeecreamiceteapizza
3条回答
for tup in features:
    lst = [i.strip() for i in tup[1]]
    tup = tup[0] + lst 

如果我理解正确,这将遍历列表中的每个元组,并用每个项的str.strip()版本替换列表索引1

这是一种方法。使用str.strip

例如:

features = (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Batagram', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44']), (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Bhalwal', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44']), (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Burewala', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44']), (83, ['Fast Food', ' Bakery', ' Beverages', ' Burgers', ' Ice Cream', ' Pizza', ' Seafood', ' Steaks', ' Tea & Coffee', ' Dessert', 'Chakwal', 'Pakistan', '1', ' 23', ' 26', ' 37', ' 44'])
features = [(i, [j.strip() for j in k]) for i, k in features]
print(features)

输出:

[(83, ['Fast Food', 'Bakery', 'Beverages', 'Burgers', 'Ice Cream', 'Pizza', 'Seafood', 'Steaks', 'Tea & Coffee', 'Dessert', 'Batagram', 'Pakistan', '1', '23', '26', '37', '44']), (83, ['Fast Food', 'Bakery', 'Beverages', 'Burgers', 'Ice Cream', 'Pizza', 'Seafood', 'Steaks', 'Tea & Coffee', 'Dessert', 'Bhalwal', 'Pakistan', '1', '23', '26', '37', '44']), (83, ['Fast Food', 'Bakery', 'Beverages', 'Burgers', 'Ice Cream', 'Pizza', 'Seafood', 'Steaks', 'Tea & Coffee', 'Dessert', 'Burewala', 'Pakistan', '1', '23', '26', '37', '44']), (83, ['Fast Food', 'Bakery', 'Beverages', 'Burgers', 'Ice Cream', 'Pizza', 'Seafood', 'Steaks', 'Tea & Coffee', 'Dessert', 'Chakwal', 'Pakistan', '1', '23', '26', '37', '44'])]

在列表的每个元素上使用列表理解和映射:

features = [(a, list(map(lambda y: y.strip(), b))) for a, b in features]

相关问题 更多 >