1、使用 open
常規操作
with open('data.txt') as fp:
content = fp.readlines()
2、使用 fileinput
使用內置庫 fileinput
import fileinput
with fileinput.input(files=('data.txt',)) as file:
content = [line for line in file]
3、使用 filecache
使用內置庫 filecache,你可以用它來指定讀取具體某一行,或者某幾行,不指定就讀取全部行。
import linecache
content = linecache.getlines('werobot.toml')
4、使用 codecs
使用 codecs.open
來讀取
import codecs
file=codecs.open("README.md", 'r')
file.read()
如果你還在使用 Python2,那么它可以幫你處理掉 Python 2 下寫文件時一些編碼錯誤,一般的建議是:
在 Python 3 下寫文件,直接使用 open
在 Python 2 下寫文件,推薦使用 codecs.open,特別是有中文的情況下
如果希望代碼同時兼容Python2和Python3,那么也推薦用codecs.open
5、使用 io 模塊
使用 io 模塊的 open 函數
import io
file=io.open("README.md")
file.read()
經朋友提醒,我才發現 io.open 和 open 是同一個函數
Python 3.9.2 (default, Feb 28 2021, 17:03:44)
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> (open1:=open) is (open2:=os.open)
False
>>> import io
>>> (open3:=open) is (open3:=io.open)
True
6、使用 os 模塊
os 模塊也自帶了 open 函數,直接操作的是底層的 I/O 流,操作的時候是最麻煩的
>>> import os
>>> fp = os.open("hello.txt", os.O_RDONLY)
>>> os.read(fp, 12)
b'hello, world'
>>> os.close(fp)
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
模塊
+關注
關注
7文章
2783瀏覽量
49542 -
函數
+關注
關注
3文章
4368瀏覽量
64180 -
python
+關注
關注
56文章
4825瀏覽量
86166
發布評論請先 登錄
相關推薦
熱點推薦
使用iic對mpu9250進行讀取數據,讀取磁力計數據時采用的是主控iic方式,但是讀取的速度特別慢,為什么?
使用iic對mpu9250進行讀取數據,讀取磁力計數據時采用的是主控iic方式,但是讀取的速度特
發表于 03-14 07:40
恩智浦eIQ Time Series Studio 工具使用攻略(四)-數據導入
將分別介紹"異常檢測", "分類", "回歸"的數據集輸入:
對于異常檢測項目,必須導入兩類數據文件:正常數據和異常數據文件。每個

適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據庫
和 MariaDB 數據庫服務器以及托管數據庫服務,以對存儲的數據執行創建、讀取、更新和刪除操作。該解決方案完全實現了 Python DB

適用于Oracle的Python連接器:可訪問托管以及非托管的數據庫
,以對存儲的數據執行創建、讀取、更新和刪除操作。該解決方案完全實現了 Python DB API 2.0 規范,并作為 Windows、macOS 和 Linux 的 wheel 包分發。 特征
使用ADS8528軟件模式串行方式,始終不能正確讀取數據,為什么?
我使用ADS8528軟件模式串行方式時遇到一些問題,始終不能正確讀取數據,請幫忙。我把軟件和硬件放在附件中。設置了配置寄存器后,一直不能讀到正確的配置寄存器的值。根據數據手冊的說明,
發表于 01-10 06:11
ADS1274讀取出來的數據一直為0,為什么?
看了ADS1274的官方文件,但是沒怎么懂。我用TMS320F2808來驅動,電路圖如圖,按照我的這種連接方式,將DSP設置為主機模式,
采用虛發數據的方式
發表于 01-09 08:21
ADS1254用模擬SPI的方式讀取數據,讀取到的數據呈現下降沿趨勢,為什么?
調試程序中,首先在方波的上升沿開啟CLK(8M),開始轉換,在用定時器中斷等待43.4*6us后,用模擬SPI的方式讀取數據,但是讀取到的數據
發表于 01-09 07:23
炫通“文件來”,文件輕松來,用了都說“好”!
,要獲取測試數據文件,需要人到現場,先取出設備的 SD 卡,再借助讀取器將數據下載至電腦進行查看,隨后再把 SD 卡插回設備。這種操作模式下,給客戶帶來以下麻煩: 1)用戶需要攜帶電腦前往設備所在之處,不方便! 2)頻繁地插拔

HarmonyOS Next 應用元服務開發-分布式數據對象遷移數據文件資產遷移
設備文件訪問實現文件的遷移,難以獲取文件同步完成的時間。為了保證更高的成功率,文件的遷移不建議繼續通過該方式實現,推薦使用分布式
發表于 12-24 10:11
BSDF數據導入與擬合
簡介
在FRED中,列表形式的BSDF數據可以使用如下兩種方式。
1.按照FRED可以識別的數據格式直接導入作為散射模型。
2.使用BSDF數據擬合工具來產生合適的函數模型。
發表于 12-23 19:35
BSDF數據導入與擬合
簡介
在FRED中,列表形式的BSDF數據可以使用如下兩種方式。
1.按照FRED可以識別的數據格式直接導入作為散射模型。
2.使用BSDF數據擬合工具來產生合適的函數模型。
發表于 12-13 10:05
數據庫數據恢復—ORACLE常見故障的數據恢復可行性分析
Oracle數據庫常見故障表現:
1、ORACLE數據庫無法啟動或無法正常工作。
2、ORACLE ASM存儲破壞。
3、ORACLE數據文件丟失。
4、ORACLE數據文件部
oracle數據恢復—存儲掉盤導致Oracle數據庫文件大小變為0kb的數據恢復案例
存儲掉盤超過上限,lun無法識別。管理員重組存儲的位圖信息并導出lun,發現linux操作系統上部署的oracle數據庫中有上百個數據文件的大小變為0kb。數據庫的大小縮水了80%以上。
取出

如何實現Python復制文件操作
Python 中有許多“開蓋即食”的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在這篇文章中,你將會看到一些用 Python 實現文件復制的特殊
評論