Python 整行讀取文本方法并去掉readlines換行操作
我就廢話不多說了,大家還是直接看代碼吧~
import os path='dir/dir' # 目錄files=os.listdir(path) # 讀取該下的所有文本for i in files: f1 = open(dic_path + i,'r') data = f1.read().splitlines() for j in data: print(j)
補充知識:Python 三種讀文件方法read(), readline(), readlines()及去掉換行符n
首先, 讓我們看下數據demo.txt, 就兩行數據.
35durant
teamGSW
1. read()
with open('demo.txt', 'r') as f: data = f.read() print(data) print(type(data))output[1]:35durantteamGSW
這種方法直接將所有的數據一次性讀取出來, data的數據類型是一個字符串.
2. readline()
with open('demo.txt', 'r') as f: data = f.readline() print(data) print(type(data))output[1]:35durant<class ’str’>
該方法讀取的是一行內容, 然后是帶換行符的, 所有會有空行, 后續會說明如何去掉換行符”n”.
3. readlines()
with open('demo.txt', 'r') as f: data = f.readlines() print(data) print(type(data))output[1]:[’35durantn’, ’teamGSW’]<class ’list’>
這種方法返回的是一個列表, 注意換行符是包含在字符串的內容中.
接下來說明, 如何在讀取文本文件時去掉字符串中的換行符: “n”.
這里以readlines()方法返回的list與read()方法返回的str為例, 分別進行說明.
方法1: 基于list的索引操作
with open('demo.txt', 'r') as f: data = f.readlines() print(data) a = data[0][:-1] b = data[1] print(a, b)output[1]:[’35durantn’, ’teamGSW’]35durant teamGSW
方法2: 基于str的splitlines()方法
with open('demo.txt', 'r') as f: data = f.read().splitlines() print(data)output[1]: [’35durant’, ’teamGSW’]
以上這篇Python 整行讀取文本方法并去掉readlines換行n操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章: