例如,如果我有这样的字符串:
a = "username@102.1.1.2:/home/hello/there"
如何删除最后一个单词之后的最后一个单词/
。结果应该是这样的:
username@102.1.1.2:/home/hello/
OR
username@102.1.1.2:/home/hello
试试这个:
In [6]: a = "username@102.1.1.2:/home/hello/there"
In [7]: a.rpartition('/')[0]
Out[7]: 'username@102.1.1.2:/home/hello'
>>> "username@102.1.1.2:/home/hello/there".rsplit('/', 1)
['username@102.1.1.2:/home/hello', 'there']
>>> "username@102.1.1.2:/home/hello/there".rsplit('/', 1)[0]
'username@102.1.1.2:/home/hello'
你可以试试这个
a = "username@102.1.1.2:/home/hello/there"
print '/'.join(a.split('/')[:-1])
这可能不是最 Pythonic 的方式,但我相信以下方法会起作用。
tokens=a.split('/')
'/'.join(tokens[:-1])
您是否考虑过os.path.dirname?
>>> a = "username@102.1.1.2:/home/hello/there"
>>> import os
>>> os.path.dirname(a)
'username@102.1.1.2:/home/hello'
a = "用户名@102.1.1.2:/home/hello/there" a.rsplit('/', 1)[0]
结果 -username@102.1.1.2:/home/hello/