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'
关于python - 如何拆分字符串中的大写字母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14845013/