Python 如何将字符串按数字拆分为列表?

Python 如何将字符串按数字拆分为列表?,python,Python,我一直在寻找一种按数字分割字符串的方法,例如: st = "abc4ert" from string import digits st = st.split(digits) --> st = ['abc','ert'] 有没有办法做到这一点(不包括列表中的数字)?使用正则表达式 Ex: import re st = "abc4ert" print(re.findall(r"[A-Za-z]+", st)) ['abc', 'ert'] 输出: import re st = "ab

我一直在寻找一种按数字分割字符串的方法,例如:

st = "abc4ert"
from string import digits
st = st.split(digits)
--> st = ['abc','ert']
有没有办法做到这一点(不包括列表中的数字)?

使用正则表达式

Ex:

import re

st = "abc4ert"
print(re.findall(r"[A-Za-z]+", st))
['abc', 'ert']
输出:

import re

st = "abc4ert"
print(re.findall(r"[A-Za-z]+", st))
['abc', 'ert']
使用:

输出:

['abc', 'ert']

如果您能解释一下这一行代码,那就太好了。
re.findall(r“[A-Za-z]+”,st)
。了解它是如何为现在和将来阅读您答案的更多读者所用的将是很有帮助的,因为它具有非常基本的正则表达式读写能力。
[…]
匹配一个字符,该字符是方括号中定义的字符之一,和
A-Z
A-Z
是语义应该明显的字符范围。
+
匹配前一个表达式上的一个或多个匹配序列。为重复答案添加了非正则表达式方法。我认为问题不是重复的。关联问题中的情况是否有所不同?