我有一个字符串“A1T1730”
我需要从中提取第二个字母和最后四个字母。例如,我需要从“A1T1730”中提取“1”和“1730”。我不知道如何在 Python 中做到这一点。
我现在有以下内容,它分别从字符串中提取每个字符,所以有人可以帮助我根据上述需要更新它。
list = ['A1T1730']
for letter in list[0]:
print letter
Run Code Online (Sandbox Code Playgroud)
这给出了 A, 1, T, 1, 7, 3, 0 的结果
my_string = "A1T1730"
my_string = my_string[1] + my_string[-4:]
print my_string
Run Code Online (Sandbox Code Playgroud)
输出
11730
Run Code Online (Sandbox Code Playgroud)
如果你想将它们提取到不同的变量中,你可以这样做
first, last = my_string[1], my_string[-4:]
print first, last
Run Code Online (Sandbox Code Playgroud)
输出
1 1730
Run Code Online (Sandbox Code Playgroud)
使用filterwith str.isdigit(作为未绑定方法形式):
>>> filter(str.isdigit, 'A1T1730')
'11730'
>>> ''.join(filter(str.isdigit, 'A1T1730')) # In Python 3.x
'11730'
Run Code Online (Sandbox Code Playgroud)
如果您想要分隔数字,请使用正则表达式(请参阅re.findall):
>>> import re
>>> re.findall(r'\d+', 'A1T1730')
['1', '1730']
Run Code Online (Sandbox Code Playgroud)
如果数字的位置是固定的,则使用 thefourthey 的解决方案。
顺便说一句,不要用作list变量名。它隐藏了内置list函数。