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文章
2729瀏覽量
47617 -
函數
+關注
關注
3文章
4344瀏覽量
62818 -
python
+關注
關注
56文章
4802瀏覽量
84889
發布評論請先 登錄
相關推薦
適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據庫
和 MariaDB 數據庫服務器以及托管數據庫服務,以對存儲的數據執行創建、讀取、更新和刪除操作。該解決方案完全實現了 Python DB
ADS1254用模擬SPI的方式讀取數據,讀取到的數據呈現下降沿趨勢,為什么?
調試程序中,首先在方波的上升沿開啟CLK(8M),開始轉換,在用定時器中斷等待43.4*6us后,用模擬SPI的方式讀取數據,但是讀取到的數據
發表于 01-09 07:23
炫通“文件來”,文件輕松來,用了都說“好”!
,要獲取測試數據文件,需要人到現場,先取出設備的 SD 卡,再借助讀取器將數據下載至電腦進行查看,隨后再把 SD 卡插回設備。這種操作模式下,給客戶帶來以下麻煩: 1)用戶需要攜帶電腦前往設備所在之處,不方便! 2)頻繁地插拔
HarmonyOS Next 應用元服務開發-分布式數據對象遷移數據文件資產遷移
設備文件訪問實現文件的遷移,難以獲取文件同步完成的時間。為了保證更高的成功率,文件的遷移不建議繼續通過該方式實現,推薦使用分布式
發表于 12-24 10:11
數據庫數據恢復—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 實現文件復制的特殊
示波器文件存儲方式介紹
示波器作為電子測試領域的重要工具,其功能不僅限于實時顯示和分析電信號波形,還涉及到數據的存儲和導出。隨著技術的發展,示波器提供了多種文件存儲方式,以滿足不同應用場景下的數據保存需求。本
TLE9867使用定序器讀取模擬輸入數據,只想知道在讀取ADC1數據時,中斷方式和定序器方式有何不同?
親愛的團隊,
我正在使用定序器讀取模擬輸入數據,只想知道在讀取 ADC1 數據時,中斷方式和定序器方式
發表于 05-22 08:23
麥科信(Micsig)示波器多種文件存儲方式介紹:波形數據、屏幕截圖與視頻錄制
很多人對于示波器的波形數據的存儲功能不是很熟悉,各種文件存儲方式之間有何差異?如何重新打開保存的波形數據?以及如何對示波器進行截圖和視頻錄制?借助本文我們一起深入了解麥科信示波器的先進
python解析netflow數據到csv的流程詳解
本文主要講解了linux下通過tcpdump抓取netflow數據包,并將其導入到wireshark進行解析,然后通過wireshark導出數據為json文件,再通過python腳本將
python讀取stm32串口讀不了是哪里的問題?
=ser.readlines()print(s)
可是什么都讀取不了。如果用買的STM32開發板送的串口助手,能接收到數據。板子上燒錄的printf輸出程序。 請問各位大神,Python程序要怎么寫才能
發表于 04-24 08:07
Python怎么讀取STM32串口數據?
=ser.readlines()print(s)
可是什么都讀取不了。如果用買的STM32開發板送的串口助手,能接收到數據。板子上燒錄的printf輸出程序。 請問各位大神,Python程序要怎么寫才能
發表于 04-24 07:30
python中open函數的用法詳解
python中open函數的用法詳解 Python中的open()函數用于打開文件。它接受文件名和模式作為參數,并返回一個文件對象。
評論