Вот два возможных подхода:
Один более многословный. Другой, по сути, делает то же самое, но, если хотите, конденсирует его в одну строку.
Подход 1:
В подходе 1 мы создаем пустой список для временного хранения результатов.
Оттуда мы анализируем каждый элемент name
и .split()
каждый элемент на дефисах.
Для каждого элемента будет получен список, состоящий из трех элементов: ['190523', '105238', 'J105150.json']
, например.
Мы используем индекс [-1]
, чтобы выбрать только последний элемент, а затем .replace()
текст .json
с пустой строкой ''
, эффективно удаляющий .json
.
Затем мы добавляем элемент в список new_names
.
Наконец, мы перезаписываем переменную label name
, чтобы она указывала на новый сгенерированный список.
name = ['190523-105238-J105150.json', '190152-105568-J616293.json']
new_names = []
for item in name:
item = item.split('-')[-1]
new_names.append(item.replace('.json', ''))
name = new_names
Подход 2:
name = ['190523-105238-J105150.json', '190152-105568-J616293.json']
name = [item.split('-')[-1].replace('.json', '') for item in name]