網站首頁 編程語言 正文
Python-with open() as f的用法
with open(r'filename.txt') as f: data_user=pd.read_csv(f) #文件的讀操作 with open('data.txt', 'w') as f: f.write('hello world') #文件的寫操作
相關參數
-
r
:以只讀方式打開文件。文件的指針將會放在文件的開頭。這是**默認模式**。 -
rb
:以二進制格式打開一個文件用于只讀。文件指針將會放在文件的開頭。這是默認模式。 -
r+
:打開一個文件用于讀寫。文件指針將會放在文件的開頭。 -
rb+
:以二進制格式打開一個文件用于讀寫。文件指針將會放在文件的開頭。 -
w
:打開一個文件只用于寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 -
wb
:以二進制格式打開一個文件只用于寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 -
w+
:打開一個文件用于讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 -
wb+
:以二進制格式打開一個文件用于讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 -
a
:打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之后。如果該文件不存在,創建新文件進行寫入。 -
ab
:以二進制格式打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之后。如果該文件不存在,創建新文件進行寫入。 -
a+
:打開一個文件用于讀寫。如果該文件已存在,文件指針將會放在文件的結尾。文件打開時會是追加模式。如果該文件不存在,創建新文件用于讀寫。 -
ab+
:以二進制格式打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結尾。如果該文件不存在,創建新文件用于讀寫。
file對象的屬性
-
file.read([size])
:將文件數據作為字符串返回,可選參數size控制讀取的字節數 -
file.readlines([size])
:返回文件中行內容的列表,size參數可選 -
file.write(str)
:將字符串寫入文件 -
file.writelines(strings)
:將字符串序列寫入文件 -
file.close()
:關閉文件 -
file.closed
:表示文件已經被關閉,否則為False -
file.mode
:Access文件打開時使用的訪問模式 -
file.encoding
:文件所使用的編碼 -
file.name
:文件名 -
file.newlines
:未讀取到行分隔符時為None,只有一種行分隔符時為一個字符串,當文件有多種類型的行結束符時,則為一個包含所有當前所遇到的行結束的列表 -
file.softspace
:為0表示在輸出一數據后,要加上一個空格符,1表示不加。這個屬性一般程序員用不著,由程序內部使用
附
一道例題
將ecb.bmp的前128字節替換為bmp文件格式特有的字節的腳本
from Crypto.Util.number import long_to_bytes with open('ecb.bmp','rb') as f: #讀入 data=f.read() pre=0x424d76483f00000000007600000028000000000f000070080000010004000000000000483f00000000000000000000000000000000000000000000008000008000000080800080000000800080008080000080808000c0c0c0000000ff0000ff000000ffff00ff000000ff00ff00ffff0000ffffff00ffffffffffffffffffffL out=long_to_bytes(pre)+data[128:] with open('out.bmp','wb') as g: #寫入 g.write(out)
總結
原文鏈接:https://blog.csdn.net/weixin_45556441/article/details/110847939
相關推薦
- 2022-06-24 Android實現按鈕點擊事件的三種方法總結_Android
- 2023-07-26 TypeScript中的keyof、typeof、索引訪問類型、條件類型
- 2023-07-26 ndoe中express框架的基本使用,接收get、post請求,以及處理回調地獄的優雅解決方法
- 2022-10-30 解決docker訪問外部https數字證書問題_docker
- 2022-05-17 IDEA使用Tomcat
- 2023-02-05 不同的編程語言輸出?“Hello?World”?代碼_其它綜合
- 2022-05-11 生產事故記錄(tomcat線程池與數據庫連接池)與(堆棧信息)Jprofile的使用
- 2022-04-09 C++實現簡易計算器功能_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支