我想摆脱python中\后面的字符串中的字符

df5['Abbreviation'] = df5['Abbreviation'].str.strip('\')
df5['Data Type'] = df5['Data Type'].str.strip('\')


错误信息:

File "<ipython-input-150-c7763a76caaf>", line 1

    df5['Abbreviation'] = df5['Abbreviation'].str.strip('\')
                                                            ^
SyntaxError: EOL while scanning string literal

最佳答案

字符串文字中不能只包含一个\(或末尾,或者一个只有奇数个的字符串)而不进行转义(因为它将转义右引号),因此必须转义:

...str.strip('\\')


要删除反斜杠后的所有内容,可以使用applysplit

rem = lambda s : s.split('\\')[0] + '\\'

df5['Abbreviation'] = df5['Abbreviation'].apply(rem)
df5['Data Type'] = df5['Data Type'].apply(rem)


另外,正如@ G.Anderson指出的,如果您的字符串类似于标题上的字符串,则可以仅使用...str.strip(),在这种情况下,您的代码可以是:

df5['Abbreviation'] = df5['Abbreviation'].apply(str.strip)
df5['Data Type'] = df5['Data Type'].apply(str.strip)

10-08 20:12