1

在 python 2.6 中使用 string split() 时我面临一个非常简单的情况

问题是

我在一个文件中有一行读取

bacarat,baccarat

然后调用split(",")就可以了。这导致

['bacarat', 'baccarat\r'] 

对于所有的行,一个额外的\r无处不在。

此代码在某些仅支持 python2.6 的旧 python 脚本中运行在服务器上

任何线索将不胜感激。

谢谢

4

1 回答 1

4

使用str.stripstr.rstrip()删除它\r(回车),然后应用str.split

>>> strs = 'bacarat,baccarat\r'
>>> strs.strip().split(',')
['bacarat', 'baccarat']

使用str.rstrip: 仅删除尾随'\r'

>>> strs.rstrip('\r').split(',')
['bacarat', 'baccarat']

str.strip不带参数会删除所有类型的尾随和前导空格字符,如,'\n'等。'\r''\t'

使用str.replace:请注意,这将替换'\r'行中任何位置的所有内容。

>>> strs = 'bacarat,baccarat\r'
>>> strs.replace('\r','').split(',')
['bacarat', 'baccarat']
于 2013-06-12T11:07:00.937 回答