逃避python中的前导'b'

时间:2013-12-19 04:11:31

标签: python byte output

我试图删除像

这样的字符串
var/vob/bxxxxx/xxxxx/vob

我这样做......

'var/vob/bxxxxx/xxxxx/vob'.lstrip('/var/vob/')

我期待输出像......

bxxxxx/xxxx/vob

但它只是给......

xxxx/xxxxxx/vob

是的我知道因为第一个字母是b,而在python前缀b中,字符串代表将其转换为字节,我也读过this ...

但我想知道的是如何绕过这件事..我想得到所需的输出......

我很乐意说我尝试过的东西..但是我找不到任何方法可以尝试......有人可以对此有所了解......

谢谢:)

3 个答案:

答案 0 :(得分:6)

你误解了lstrip的作用。它会删除属于参数字符串的所有字符。订单无关紧要。由于b位于字符串中,因此会从结果的前面删除它。

答案 1 :(得分:2)

怎么样?
if s.startswith("var/vob/):
    s = s[8:]

是的,Mark是对的,lstrip从字符串中删除参数中包含的任何字符。

答案 2 :(得分:2)

这样做的最好方法就是这样

data, text = "/var/vob/bxxxxx/IT_test/vob", "/var/vob/"
if data.startswith(text): data = data[len(text):]
print data

<强>输出

bxxxxxx/IT_test/vob