Как удалить последовательность строк в списке? - PullRequest
0 голосов
/ 01 февраля 2019

Допустим, у меня есть список:

lst = ['object1','object2','object3']

как я могу сделать это, чтобы удалить подстроку 'object'?

Так что, если это работает правильно, вывод будетбыть:

['1','2','3']

Я пытался использовать метод list.remove (), но, похоже, он не может сделать это хорошо с определенной последовательностью строк.

Как я мог пойтиделать это?Это вообще возможно?

Спасибо за помощь!

Ответы [ 4 ]

0 голосов
/ 01 февраля 2019

Если вы не хотите использовать 'replace' или regex в целом, вы можете попробовать вырезать элемент старого списка.

Попробуйте это:

old_list = [ 'Object1', 'Object2', 'Object3']
new_list =  [ i[-1] for i in old_list ]

То, что мы делаем выше, - это выбор последнего элемента каждого из элементов из старого списка.Разбивка будет выглядеть так:

old_list = [ 'Object1', 'Object2', 'Object3']
new_list =  []

for i in old_list:
 new_list.append(i[-1])
0 голосов
/ 01 февраля 2019

Вы можете использовать map и lambda для такой задачи.

lst = ['object1','object2','object3']

lst = list(map(lambda i: i.replace('object', ''), lst))

print(lst)

печатный результат = ['1', '2', '3']

0 голосов
/ 01 февраля 2019

Использование регулярного выражения для удаления всех нечисловых чисел в пределах списка

import re
lst = ['object1','object2','object3']
output = [re.sub('[^0-9]', '', obj) for obj in lst]
0 голосов
/ 01 февраля 2019

Попробуйте понять список с помощью [x.replace('object', '') for x in lst]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...