Chinaunix
标题:
如何去掉回车符
[打印本页]
作者:
wubulen
时间:
2006-08-28 17:18
标题:
如何去掉回车符
我将一些文件的路径及文件名放在一个文本文件里,运行脚本时从此文本文件里一条一条读出里面的文件并执行打开,但是文本文件里每一行,即每一文件名后面自动加上了回车符,如何可以在读出文件名时去掉此回车符呢?因为加了此回车符,打开文件时有错误。谢谢。
作者:
OneZ
时间:
2006-08-28 18:30
仅供参考
fileListFile = open( fileListName )
fileNames = fileListFile.readlines()
fileListFile.close()
for fileName in fileNames:
if fileName[-1] == '\n':
fileName = fileName[0:-1]
......
复制代码
作者:
wubulen
时间:
2006-08-28 19:00
可以运行,谢谢楼上的。
作者:
limodou
时间:
2006-08-28 20:44
不同的平台,换行符是不同的,上面的代码并不准确。不如使用rstrip()去掉行尾空白。不过这样也会把行尾的其它空白也一起去掉。
作者:
wubulen
时间:
2006-08-28 21:30
在windows下可以用。
作者:
guotie
时间:
2006-08-29 14:55
strip()
作者:
OneZ
时间:
2006-08-29 21:02
不同平台下的換行符當然是不一樣的。然而,不同平台下的Python,其對換行符的處理也是不一樣的,中間還有一層和平台相關的轉義。這一點,可以在Windows平台下得到證明。因此,如果你的程序和文件是同一平台下的話,上面這段程序是沒有問題的。
如果要應付夸平台的要求,對于Windows和UNIX文件,可以這樣:
fileName = fileName.replace('\r','')
fileName = fileName.replace('\n','')
复制代码
直接將回車、換行兩字符替換掉就行了。
對于Mac格式,它是以\r為換行符,無論在Windows還是在UNIX中,通過readlines函數都會把所有行讀成一行。這時候,需要用split函數進行處理。
作者:
lpy123456
时间:
2012-07-03 22:03
7楼正解 多谢..
作者:
cdtits
时间:
2012-07-04 10:28
回复
7#
OneZ
rstrip 不行么?
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2