首先,你的st
结尾是一个空格——你可能想用str.split
or删除它str.lstrip
:
>>> st = "s'ss python's is fun's "
>>> st = st.strip()
>>> print(st)
s'ss python's is fun's
然后删除尾随's
有许多不同的方法。
使用正则表达式是一种简洁的方式:
>>> import re
>>> re.sub("'s$", "", st)
"s'ss python's is fun"
或者您可以检查字符串是否以's
并删除最后两个字符结尾:
>>> if st.endswith("'s"):
... st = st[:-2]
不要str.rstrip
用来执行此操作,因为它可能不像您预期的那样:
>>> st.rstrip("'s") # Bad
"s'ss python's is fun"
在这种情况下看起来是正确的,但正如文档解释的那样,“[the] 参数不是后缀;相反,它的值的所有组合都被剥离了”。例如:
>>> "lots of ssssss's".rstrip("'s")
'lots of '