《用Python玩轉(zhuǎn)數(shù)據(jù)》-03 數(shù)據(jù)獲取與表示

1 本地?cái)?shù)據(jù)獲取

1.1 文件處理步驟

  • 打開文件 file_obj = open(filename,mode='r',buffering=-1)
  • 讀文件/寫文件 file_obj.read() / file_obj.write()
  • 關(guān)閉文件 (python)file_obj.close()

1.2 文件的打開.

file_obj = open(filename,mode='r',buffering=-1)

  • filename 是強(qiáng)制參數(shù),后面兩個(gè)是可選參數(shù)。
  • mode的默認(rèn)值為'r'
  • buffering 默認(rèn)值為-1 (0表示不緩沖,1或大于1的值表示緩沖一行或指定緩沖區(qū)大小),為了加快讀寫速度,盡量使用緩沖
python文件模式

1.3 文件相關(guān)的函數(shù)

  • open()函數(shù)返回的一個(gè)文件file對象

  • 文件對象可迭代

  • 文件對象的關(guān)閉和讀寫

    f.read()、f.write()、f.readline()、f.readlines()、f.writelines()
    f.close()、 f.seek()

  • 寫文件-f.write() / 讀文件-f.read()

  • 其他讀寫函數(shù) f.readlines() / f.readline() / f.writelines()

fileobj = open(r'H:\pythonTest1.txt')
cNames = fileobj.readlines()
print cNames
file_obj.close()

['line1\n', 'line2\n', 'line3'] 輸出了文件中的所有行,包含換行符,如果要去除換行符,需要strip函數(shù),python中讀取和寫入都不去除和加入換行符,要自己處理。
python中沒有writeline方法,因?yàn)檫@個(gè)與write方法類似,都是寫入單行

  • 其他文件相關(guān)函數(shù)
    file_obj.seek(offset,whence=0)
    在文件中移動(dòng)文件指針,從whence(0表示文件頭部,1表示當(dāng)前位置,2表示文件尾部)偏移offset個(gè)字節(jié)
    whence參數(shù)可選,默認(rèn)值為0

1.4 文件讀寫例子

打開一個(gè)文件,將每行的字符串加上序號1,2,3,然后寫到另一個(gè)文件中。

f1 = open(r"H:\\companies1.txt")
cNames = f1.readlines()   #讀取文件中所有的行
for i in range(0,len(cNames)):
    cNames[i] = str(i+1) + ' ' +cNames[i]  #追加序號到每個(gè)字符串中
f1.close
f2 = open(r"H:\\companies3.txt",'w')
f2.writelines(cNames)
f2.close()
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容