使用replace和strip函數刪除open()函數獨處的回車問題

在linux系統中通常會讀某一個文件的每一行,然後拼成字符串.

使用shell如下

#!/bin/bash
for i in `cat a.txt`;do
echo "aaa$ibbb"
done

結果如下:

aaatestbbb

但是看python執行的結果

#!/usr/bin/python  
#-*- coding: utf-8 -*-  
m=open('a.txt','r')
for i in m:
    print("aaa%sbbbb" % i)

結果如下:

aaatest
bbb

在這裏隱藏了一個\n

解決方案1,使用replace函數

#!/usr/bin/python 
#-*- coding: utf-8 -*-  m=open('a.txt','r'):
for i in m:
    m=i.replace('\n','')
    print("aaa%sbbbb" % i)

解決方案2,使用strip函數

#!/usr/bin/python  
#-*- coding: utf-8 -*-  
m=open('a.txt','r')
for i in m:
    m=i.strip()
    print("aaa%sbbbb" % i)

結果如下:

aaatestbbb


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章