測試代碼
#!/ust/bin/env python3f = open("name.txt")date = f.readlines()print(date)f.close()#結(jié)果:
#['eray/n', 'eray/n', 'bike/n']
#打印出來的帶 /n ,怎么去掉/n呢?
#解決方法:
#1、
f = open("name.txt")date = f.read().splitlines()print(date)f.close()#結(jié)果:
#['eray', 'eray', 'bike']
#2、
f = open("name.txt")date = f.readlines()#date = date.strip('/n')date = ''.join(date).strip('/n')print(date)f.close()#結(jié)果:
eray
eray
bike
第2中,注釋掉的這行
#date = date.strip('/n')     #如果去掉注釋,會報(bào)如下錯誤:

原因:
提示信息中提到list中沒有strip的這種屬性。而我們知道,strip是字符串的屬性,說明f.readlines返回的是一個列表。所以會導(dǎo)致出錯。
既然f.readlines()返回的是列表,而strip是字符串的屬性,不難想到只要我們將f.readlines()返回的列表轉(zhuǎn)換成字符串就能 用strip這個屬性了。那么怎么將列表轉(zhuǎn)為字符串呢?這里用的是字符串的join屬性。
line = ''.join(line) #這樣就將列表轉(zhuǎn)換成字符串了。
第1種,直接使用字符串方法: splitlines
在如:

strip函數(shù)用法:
函數(shù)原型
聲明:s為字符串,rm為要刪除的字符序列
s.strip(rm) 刪除s字符串中開頭、結(jié)尾處,位于 rm刪除序列的字符
s.lstrip(rm) 刪除s字符串中開頭處,位于 rm刪除序列的字符
s.rstrip(rm) 刪除s字符串中結(jié)尾處,位于 rm刪除序列的字符
注意:
1. 當(dāng)rm為空時,默認(rèn)刪除空白符(包括'/n', '/r', '/t', ' ')
每天問問搬磚的自己,跟咸魚有什么兩樣。
武林站長站小編補(bǔ)充:
# -*- coding: utf-8 -*-# 打開文件fo = open("jb51.txt", "r")print("文件名為: ",fo.name) for line in fo.readlines():       #依次讀取每行  line = line.strip()        #去掉每行頭尾空白  print ("讀取的數(shù)據(jù)為: %s" % (line)) # 關(guān)閉文件fo.close()line = line.strip()就是去掉每行頭尾空白
新聞熱點(diǎn)
疑難解答
圖片精選