Skip to main content
 首页 » 编程设计

python之如何拆分字符串中的大写字母

2025年05月04日20xxx_UU

s = "HiMyNameIsBob" 
 
letters = ("A","B", "C", "D"...) 
 
for char in s: 
    if s.find(letters) is True: 

我想要的结果是

"Hi My Name Is Bob" 

我想避免使用正则表达式方法

请您参考如下方法:

这里我可能依赖于字符串的字典顺序:

''.join( ' '+x if 'A' <= x <= 'Z' else x for x in s ) 

演示:

>>> s = "HiMyNameIsBob" 
>>> ''.join( ' '+x if 'A' <= x <= 'Z' else x for x in s ) 
' Hi My Name Is Bob' 

如果你不想要前导空格,你总是可以 .strip() 结果。

检查字符是否为大写的更好方法是使用 isupper() 函数(感谢 Esthete 和 wim 指出这一点):

>>> ''.join( ' '+x if x.isupper() else x for x in s ) 
' Hi My Name Is Bob'