欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中文件的讀取和寫入操作

 更新時間:2018年04月27日 14:08:45   作者:愛上羊羊的小灰灰  
這篇文章主要介紹了Python中文件的讀取和寫入操作,從文件中讀取數(shù)據(jù)的操作方法,本文通過實例文字相結合的形式給大家介紹的非常詳細,需要的朋友可以參考下

從文件中讀取數(shù)據(jù)

讀取整個文件

這里假設在當前目錄下有一個文件名為'pi_digits.txt'的文本文件,里面的數(shù)據(jù)如下:

3.1415926535
8979323846
2643383279

with open('pi_digits.txt') as f: # 默認模式為‘r',只讀模式
  contents = f.read() # 讀取文件全部內容
  print contents # 輸出時在最后會多出一行(read()函數(shù)到達文件末會返回一個空字符,顯示出空字符就是一個空行)
  print '------------'
  print contents.rstrip() # rstrip()函數(shù)用于刪除字符串末的空白

3.1415926535
8979323846
2643383279
------------
3.1415926535
8979323846
2643383279

逐行讀取

可以通過循環(huán)來實現(xiàn)逐行讀取數(shù)據(jù):

with open('pi_digits.txt') as f:
  for line1 in f:
    print line1 # 每行末尾會有一個換行符
  print '------------'
  for line2 in f:
    print line2.rstrip() # 此時文件已經讀完,line2指向文本末尾,因此不會有輸出

3.1415926535

8979323846

2643383279

------------

讀取文件時相當于有一個指針在記錄讀取的位置,數(shù)據(jù)讀到哪,這個指針就指到哪邊,繼續(xù)讀取數(shù)據(jù)時會從該位置繼續(xù)讀取,因此上面代碼中第二個循環(huán)中輸出為空。將上述代碼稍加修改如下:

with open('pi_digits.txt') as f:
  for line1 in f:
    print line1
  print '------------'
with open('pi_digits.txt') as f: # 需要重新打開文本進行讀取
  for line2 in f:
    print line2.rstrip() # 刪除字符串末尾的空白

3.1415926535

8979323846

2643383279

------------
3.1415926535
8979323846
2643383279

上述代碼相當于第一次讀取完后關閉該文件又重新打開進行讀取。逐行讀取數(shù)據(jù)也可以用readline()函數(shù),如下:

with open('pi_digits.txt') as f: 
  # readline()每一次讀取一行數(shù)據(jù),并指向該行末尾
  line1 = f.readline() # 讀取第一行數(shù)據(jù)(此時已經指向第一行末尾)
  line2 = f.readline() # 從上一次讀取末尾開始讀?。ǖ诙校?
  print line1.rstrip()
  print line2.rstrip()

3.1415926535
8979323846

有時候我們想要一次性讀取全部數(shù)據(jù)并且按分開存儲以便于后續(xù)的操作,當然用上面的循環(huán)可以實現(xiàn),但python提供了更簡單的方法readlines():

with open('pi_digits.txt') as f: 
  lines = f.readlines() # 讀取文本中所有內容,并保存在一個列表中,列表中每一個元素對應一行數(shù)據(jù)
print lines # 每一行數(shù)據(jù)都包含了換行符
print '------------'
for line in lines:
  print line.rstrip()  
print '------------'
pi_str = '' # 初始化為空字符
for line in lines:
  pi_str += line.rstrip() #字符串連接
print pi_str

['3.1415926535\n', '8979323846\n', '2643383279\n']
------------
3.1415926535
8979323846
2643383279
------------
3.141592653589793238462643383279

寫數(shù)據(jù)到文件

寫數(shù)據(jù)有幾種不同的模式,最常用的是w', ‘a', 分別表示擦除原有數(shù)據(jù)再寫入和將數(shù)據(jù)寫到原數(shù)據(jù)之后:

filename = 'write_data.txt'
with open(filename,'w') as f: # 如果filename不存在會自動創(chuàng)建, 'w'表示寫數(shù)據(jù),寫之前會清空文件中的原有數(shù)據(jù)!
  f.write("I am Meringue.\n")
  f.write("I am now studying in NJTECH.\n")

此時會在當前路徑下創(chuàng)建一個'write_data.txt'的文本文件,并向文件中寫入數(shù)據(jù)如下:

I am Meringue.
I am now studying in NJTECH.

下面繼續(xù)在該文件中加入新數(shù)據(jù):

with open(filename,'a') as f: # 'a'表示append,即在原來文件內容后繼續(xù)寫數(shù)據(jù)(不清楚原有數(shù)據(jù))
  f.write("I major in Machine learning and Computer vision.\n")

此時的文件內容為:

I am Meringue.
I am now studying in NJTECH.
I major in Machine learning and Computer vision.

總結

以上所述是小編給大家介紹的Python中文件的讀取和寫入操作,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

  • Pytorch 如何實現(xiàn)常用正則化

    Pytorch 如何實現(xiàn)常用正則化

    這篇文章主要介紹了Pytorch 實現(xiàn)常用正則化的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python應用之bin文件的制作

    Python應用之bin文件的制作

    bin是二進制文件,其用途依系統(tǒng)或應用而定。一種文件格式binary的縮寫。這篇文章主要為大家介紹了Python如何實現(xiàn)bin文件的制作,需要的可以參考一下
    2023-01-01
  • 基于Python實現(xiàn)口罩佩戴檢測功能

    基于Python實現(xiàn)口罩佩戴檢測功能

    這篇文章主要介紹了基于Python實現(xiàn)的口罩佩戴檢測,在本次實驗中,我們要建立一個目標檢測的模型,可以識別圖中的人是否佩戴了口罩,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2022-05-05
  • python如何實現(xiàn)TF-IDF算法

    python如何實現(xiàn)TF-IDF算法

    這篇文章主要介紹了python如何實現(xiàn)TF-IDF算法問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Python必備技巧之字符數(shù)據(jù)操作詳解

    Python必備技巧之字符數(shù)據(jù)操作詳解

    處理字符數(shù)據(jù)是編程不可或缺的一部分。Python?提供了一組豐富的運算符、函數(shù)和方法來處理字符串。包括字符串運算符、內置函數(shù)、索引、切片和內置方法。快來學習一下吧
    2022-03-03
  • python類方法和靜態(tài)方法詳解

    python類方法和靜態(tài)方法詳解

    這篇文章主要為大家介紹了python類方法和靜態(tài)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • 利用Python實現(xiàn)文檔批量重命名

    利用Python實現(xiàn)文檔批量重命名

    日常工作中總會遇到一些需要收集文件的情況,但往往最后收集回來的文件名稱會五花八門,下面小編就來為大家講講如何使用Python實現(xiàn)批量重命名操作吧
    2025-02-02
  • Python獲取"3年前的今天"的日期時間問題

    Python獲取"3年前的今天"的日期時間問題

    在Python中,如何獲取"?3年前的今天"的datetime對象,本文通過實例代碼給大家詳細講解,代碼簡單易懂對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-01-01
  • python數(shù)據(jù)封裝json格式數(shù)據(jù)

    python數(shù)據(jù)封裝json格式數(shù)據(jù)

    本次內容是小編在網上整理的關于如何python數(shù)據(jù)封裝json格式的內容總結,有興趣的讀者們參考下。
    2018-03-03
  • python實現(xiàn)的登陸Discuz!論壇通用代碼分享

    python實現(xiàn)的登陸Discuz!論壇通用代碼分享

    這篇文章主要介紹了python實現(xiàn)的登陸Discuz!論壇通用代碼分享,需要的朋友可以參考下
    2014-07-07

最新評論