日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

Python-with?open()?as?f的用法及說(shuō)明_python

作者:半島鐵盒@ ? 更新時(shí)間: 2023-01-20 編程語(yǔ)言

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')  #文件的寫(xiě)操作

相關(guān)參數(shù)

  • r:以只讀方式打開(kāi)文件。文件的指針將會(huì)放在文件的開(kāi)頭。這是**默認(rèn)模式**。
  • rb:以二進(jìn)制格式打開(kāi)一個(gè)文件用于只讀。文件指針將會(huì)放在文件的開(kāi)頭。這是默認(rèn)模式。
  • r+:打開(kāi)一個(gè)文件用于讀寫(xiě)。文件指針將會(huì)放在文件的開(kāi)頭。
  • rb+:以二進(jìn)制格式打開(kāi)一個(gè)文件用于讀寫(xiě)。文件指針將會(huì)放在文件的開(kāi)頭。
  • w:打開(kāi)一個(gè)文件只用于寫(xiě)入。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
  • wb:以二進(jìn)制格式打開(kāi)一個(gè)文件只用于寫(xiě)入。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
  • w+:打開(kāi)一個(gè)文件用于讀寫(xiě)。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
  • wb+:以二進(jìn)制格式打開(kāi)一個(gè)文件用于讀寫(xiě)。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
  • a:打開(kāi)一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說(shuō),新的內(nèi)容將會(huì)被寫(xiě)入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫(xiě)入。
  • ab:以二進(jìn)制格式打開(kāi)一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說(shuō),新的內(nèi)容將會(huì)被寫(xiě)入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫(xiě)入。
  • a+:打開(kāi)一個(gè)文件用于讀寫(xiě)。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。文件打開(kāi)時(shí)會(huì)是追加模式。如果該文件不存在,創(chuàng)建新文件用于讀寫(xiě)。
  • ab+:以二進(jìn)制格式打開(kāi)一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。如果該文件不存在,創(chuàng)建新文件用于讀寫(xiě)。

file對(duì)象的屬性

  • file.read([size]):將文件數(shù)據(jù)作為字符串返回,可選參數(shù)size控制讀取的字節(jié)數(shù)
  • file.readlines([size]):返回文件中行內(nèi)容的列表,size參數(shù)可選
  • file.write(str):將字符串寫(xiě)入文件
  • file.writelines(strings):將字符串序列寫(xiě)入文件
  • file.close():關(guān)閉文件
  • file.closed:表示文件已經(jīng)被關(guān)閉,否則為False
  • file.mode:Access文件打開(kāi)時(shí)使用的訪問(wèn)模式
  • file.encoding:文件所使用的編碼
  • file.name:文件名
  • file.newlines:未讀取到行分隔符時(shí)為None,只有一種行分隔符時(shí)為一個(gè)字符串,當(dāng)文件有多種類型的行結(jié)束符時(shí),則為一個(gè)包含所有當(dāng)前所遇到的行結(jié)束的列表
  • file.softspace:為0表示在輸出一數(shù)據(jù)后,要加上一個(gè)空格符,1表示不加。這個(gè)屬性一般程序員用不著,由程序內(nèi)部使用

一道例題

將ecb.bmp的前128字節(jié)替換為bmp文件格式特有的字節(jié)的腳本

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:    #寫(xiě)入
    g.write(out)

總結(jié)

原文鏈接:https://blog.csdn.net/weixin_45556441/article/details/110847939

欄目分類
最近更新