Резка струны в питоне
Я провел поиск, но не смог найти никакой полезной информации.
s = ['33PM']
Моя цель состоит в том, чтобы вырезать "PM" из s[0]
и добавить его как s[1]
,
2 ответа
Ты можешь использовать re.findall
извлечь непрерывный диапазон чисел и символов. \d+
будет извлекать все числа и \w+
будет извлекать все диапазоны символов
>>> import re
>>> s = re.findall(r'\d+|\w+', s[0])
>>> s
['33', 'PM']
Вот метод, который использует простой код Python, избегая сложностей регулярных выражений. Это предназначено для тех случаев, когда вы знаете, что 'PM'
находится в строке, и если в строке есть какой-либо текст после этого, он будет перемещен во второй элемент списка вместе с 'PM
, Этот код также предполагает, что вы заботитесь только о первом элементе в списке - любые последующие элементы будут отброшены.
s = ['33PM']
string0 = s[0]
loc = string0.find('PM')
s = [string0[:loc], string0[loc:]]
Если вы сейчас печатаете s
результат
['33', 'PM']