This question already has answers here:
Removing a prefix from a string
(6个答案)
去年关闭。
我遇到了我认为是错误的问题,并且正在寻求确认,或者我不了解此方法的工作原理。
这是我的基本输出:
我的理解是,该示例中的最后一个“lstrip”应该已经返回“K”,但事实并非如此。有人知道为什么吗?
(6个答案)
去年关闭。
我遇到了我认为是错误的问题,并且正在寻求确认,或者我不了解此方法的工作原理。
这是我的基本输出:
(Pdb) x = 'KEY_K'
(Pdb) x.lstrip('K')
'EY_K'
(Pdb) x.lstrip('KE')
'Y_K'
(Pdb) x.lstrip('KEY')
'_K'
(Pdb) x.lstrip('KEY_')
''
(Pdb) import sys
(Pdb) sys.version
'2.7.11 (default, Dec 5 2015, 14:44:47) \n[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.76)]'
我的理解是,该示例中的最后一个“lstrip”应该已经返回“K”,但事实并非如此。有人知道为什么吗?
最佳答案
在文档中是正确的:
'K'
在'KEY_'
中,这就是为什么上一个示例返回''
的原因。
请注意,如果'K'
前面带有不在'KEY_'
中的字符,则不会将其删除:
>>> 'KEY_xK'.lstrip('KEY_')
'xK'
09-25 18:13