2010-11-08 55 views
1

我从Twitter API获取了一些内容,并且我遇到了一些问题,实际上我有时会收到只有一个反斜杠结束的推文。 更确切地说,我使用simplejson来解析Twitter流。[Python]如何处理以一个反斜杠结尾的字符串?

我该如何逃避这个反斜杠?

从我所读到的,这样的原始字符串应该不存在... 即使我添加一个反斜杠(实际上有两个反斜杠),我仍然得到一个错误,因为我怀疑(因为我有一个奇数的反斜杠)

有什么想法? 我也可以忘记这些推文,但我仍然对此很好奇。

感谢:)

+6

您遇到的问题会导致问题的一个示例会有所帮助。 – rossipedia 2010-11-08 06:44:17

+0

tzot说得对,'r“no \问题”+“\\”'是一个很好的方法来得到:没有\问题\ – n611x007 2014-07-14 08:36:22

回答

1

前面加上r(字符串代表“原始”)会逃过字符串中的所有字符。例如:

print r'\b\n\\'

将输出

\b\n\\

有我的理解正确的问题?

1

您可以尝试通过前置一个r使用原始字符串(所以一切都没有进行转义)字符串或re.escape()

我不确定你需要什么,因为我没有看到答复的文字。如果你自己提出的或从这里得到的方法都不起作用,那么你可能不得不忘记这些推文。

0

除非你更新你的问题,并回来一个真正的问题,我断言你没有一个问题,除了混乱。

您从Tweeter API获取字符串,但是该字符串不会显示在您的代码中。 “原始字符串”仅存在于您的代码中,并且代码中的“原始字符串”不能以反斜杠结尾。

考虑一下:

def some_obscure_api(): 
    "This exists in a library, so you don't know what it does" 
    return r"hello" + "\\" # addition just for fun 

my_string = some_obscure_api() 
print(my_string) 

看到了吗? my_string愉快地结束于反斜杠,您的代码不会在乎。