title()问题
求助各位大佬a = " i'm iron man"
a.title()
变成了" I'M Iron Man"
怎么能让M是小写的 本帖最后由 qiuyouzhi 于 2020-11-26 20:22 编辑
只靠 title 方法没办法,只能自己想想其他的办法,比如用 replace 替换 'M 为 'm
参考代码:
a = "i'm iron man"
new_str = a.title()
print(new_str.replace("M","m", 1))
第1种方法:定义新的类,继承字符串父类,把str.title()方法重写
第2种方法:再写个新函数:
>>> def title2(x):
'''传入需转换的字符串,把I'M转换为I'm'''
if "I'M" in x:
x = x.replace("I'M","I'm")
return x
>>> a = " i'm iron man"
>>> title2(a.title())
" I'm Iron Man" 直接用title肯定不行
a = " i'm iron man"
print(' '.title().join(map(str.capitalize, a.split()))) 要不把 i'm 改成 i am
页:
[1]