日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Python按行输出文件内容具体解释及延伸

發布時間:2025/4/16 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python按行输出文件内容具体解释及延伸 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

下面兩端測試代碼分別為筆者所寫,第一段為錯誤版本號。后者為正確版本號:

#! /usr/bin/python2.7
try:
? ? filename = raw_input(‘please input filename:’)

? ? for eachLine infilename:
? ? ? ? ?print(eachLine)
? ? eachLine.close()
except IOError as err:
? ? print(‘file open error: {0}’.format(err))


#! /usr/bin/python2.7
try:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??//try....except--------為Python中的異常處理語句
? ? filename = raw_input(‘please input filename:’) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??//讀取字符
? ? fobj = open(filename, ‘r’) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??//檢測操作語句
? ? for eachLine in fobj: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??//循環輸出
? ? ? ? print(eachLine)
? ? fobj.close() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//關閉對象句柄
except IOError as err:
? ? print(‘file open err:{0}’.format(err))


筆者自己的錯誤:

習慣性的覺得,創建了文件之后,就能夠直接讀取當中的數據。可是須要先檢測文件是否存在,須要用到內建open()函數。

關于內建函數open():
handle = open(file_name,access_mode=’r’)
file_name 變量包括我們希望打開的文件的字符串名字。access_mode表示打開文件的方式,打開方式如表1,假設open成功。一個文件對象句柄會被返回。

全部興許文件操作都必須通過此文件句柄進行。當一個文件對象返回之后,我們就能夠訪問它的一些方法,eg. readlines(),close()。

? ? ? ? ?表1. 文件打開模式

a追加模式打開
w寫模式打開
r讀模式打開
a+讀寫模式打開
w+讀寫模式打開
r+讀寫模式打開
ab二進制追加模式打開
wb二進制寫模式打開
rb二進制讀模式打開
ab+二進制讀寫模式打開
wb+二進制讀寫模式打開
rb+二進制讀寫模式打開

Tips:
代碼中一個有趣的語句。即print(eachLine)。

此語句中能夠通過在末尾加入逗號的方式,抑制自己主動生成的換行符號,由于在文件里自帶換行字符。假設我們不抑制print語句產生的換行符號。就會有額外的空行產生。

兩種方式的執行結果對照圖如圖1。


圖1.print語句兩種方式執行結果對照圖


總結

以上是生活随笔為你收集整理的Python按行输出文件内容具体解释及延伸的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。