[英]How to extract certain letters from a string using Python
我有一个字符串 'A1T1730'
我需要从中提取第二个字母和最后四个字母。 例如,我需要从“A1T1730”中提取“1”和“1730”。 我不确定如何在 Python 中执行此操作。
我现在有以下内容,它分别从字符串中提取每个字符,所以有人可以根据上述需要帮助我更新它。
list = ['A1T1730']
for letter in list[0]:
print letter
这给了我 A, 1, T, 1, 7, 3, 0 的结果
my_string = "A1T1730"
my_string = my_string[1] + my_string[-4:]
print my_string
输出量
11730
如果要将它们提取到不同的变量中,则可以执行以下操作
first, last = my_string[1], my_string[-4:]
print first, last
输出量
1 1730
将filter
与str.isdigit
一起str.isdigit
(作为未绑定方法形式):
>>> filter(str.isdigit, 'A1T1730')
'11730'
>>> ''.join(filter(str.isdigit, 'A1T1730')) # In Python 3.x
'11730'
如果要分隔数字,请使用正则表达式(请参见re.findall
):
>>> import re
>>> re.findall(r'\d+', 'A1T1730')
['1', '1730']
如果数字的位置固定,请使用fourtheye的解决方案。
顺便说一句,不要使用list
作为变量名。 它隐藏了内置list
功能 。
那么你可以这样做
_2nd = lsit[0][1]
# last 4 characters
numbers = list[0][-4:]
您可以使用isdigit()
函数。 如果该字符是数字,则返回true,否则返回false:
list = ['A1T1730']
for letter in list[0]:
if letter.isdigit() == True:
print letter, #The coma is used for print in the same line
我希望这有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.