最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python編程中的文件操作攻略

 更新時(shí)間:2015年10月16日 16:41:04   投稿:goldensun  
這篇文章主要介紹了Python編程中的文件操作攻略,包括打開關(guān)閉重命名刪除等相關(guān)函數(shù)的使用,需要的朋友可以參考下

open函數(shù)
你必須先用Python內(nèi)置的open()函數(shù)打開一個(gè)文件,創(chuàng)建一個(gè)file對(duì)象,相關(guān)的輔助方法才可以調(diào)用它進(jìn)行讀寫。
語法:

file object = open(file_name [, access_mode][, buffering])


各個(gè)參數(shù)的細(xì)節(jié)如下:
file_name:file_name變量是一個(gè)包含了你要訪問的文件名稱的字符串值。
access_mode:access_mode決定了打開文件的模式:只讀,寫入,追加等。所有可取值見如下的完全列表。這個(gè)參數(shù)是非強(qiáng)制的,默認(rèn)文件訪問模式為只讀(r)。
buffering:如果buffering的值被設(shè)為0,就不會(huì)有寄存。如果buffering的值取1,訪問文件時(shí)會(huì)寄存行。如果將buffering的值設(shè)為大于1的整數(shù),表明了這就是的寄存區(qū)的緩沖大小。如果取負(fù)值,寄存區(qū)的緩沖大小則為系統(tǒng)默認(rèn)。
不同模式打開文件的完全列表:

File對(duì)象的屬性
一個(gè)文件被打開后,你有一個(gè)file對(duì)象,你可以得到有關(guān)該文件的各種信息。
以下是和file對(duì)象相關(guān)的所有屬性的列表:

如下實(shí)例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打開一個(gè)文件
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
print "Closed or not : ", fo.closed
print "Opening mode : ", fo.mode
print "Softspace flag : ", fo.softspace

以上實(shí)例輸出結(jié)果:

Name of the file: foo.txt
Closed or not : False
Opening mode : wb
Softspace flag : 0

Close()方法
File對(duì)象的close()方法刷新緩沖區(qū)里任何還沒寫入的信息,并關(guān)閉該文件,這之后便不能再進(jìn)行寫入。
當(dāng)一個(gè)文件對(duì)象的引用被重新指定給另一個(gè)文件時(shí),Python會(huì)關(guān)閉之前的文件。用close()方法關(guān)閉文件是一個(gè)很好的習(xí)慣。
語法:

fileObject.close();

例子:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打開一個(gè)文件
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
 
# 關(guān)閉打開的文件
fo.close()

以上實(shí)例輸出結(jié)果:

Name of the file: foo.txt


讀寫文件:
file對(duì)象提供了一系列方法,能讓我們的文件訪問更輕松。來看看如何使用read()和write()方法來讀取和寫入文件。
Write()方法
Write()方法可將任何字符串寫入一個(gè)打開的文件。需要重點(diǎn)注意的是,Python字符串可以是二進(jìn)制數(shù)據(jù),而不是僅僅是文字。
Write()方法不在字符串的結(jié)尾不添加換行符('\n'):
語法:

fileObject.write(string);

在這里,被傳遞的參數(shù)是要寫入到已打開文件的內(nèi)容。

例子:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打開一個(gè)文件
fo = open("/tmp/foo.txt", "wb")
fo.write( "Python is a great language.\nYeah its great!!\n");
 
# 關(guān)閉打開的文件
fo.close()

上述方法會(huì)創(chuàng)建foo.txt文件,并將收到的內(nèi)容寫入該文件,并最終關(guān)閉文件。如果你打開這個(gè)文件,將看到以下內(nèi)容:

Python is a great language.
Yeah its great!!


read()方法
read()方法從一個(gè)打開的文件中讀取一個(gè)字符串。需要重點(diǎn)注意的是,Python字符串可以是二進(jìn)制數(shù)據(jù),而不是僅僅是文字。
語法:

fileObject.read([count]);


在這里,被傳遞的參數(shù)是要從已打開文件中讀取的字節(jié)計(jì)數(shù)。該方法從文件的開頭開始讀入,如果沒有傳入count,它會(huì)嘗試盡可能多地讀取更多的內(nèi)容,很可能是直到文件的末尾。
例子:
就用我們上面創(chuàng)建的文件foo.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打開一個(gè)文件
fo = open("/tmp/foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# 關(guān)閉打開的文件
fo.close()

以上實(shí)例輸出結(jié)果:

Read String is : Python is


文件位置:
Tell()方法告訴你文件內(nèi)的當(dāng)前位置;換句話說,下一次的讀寫會(huì)發(fā)生在文件開頭這么多字節(jié)之后:
seek(offset [,from])方法改變當(dāng)前文件的位置。Offset變量表示要移動(dòng)的字節(jié)數(shù)。From變量指定開始移動(dòng)字節(jié)的參考位置。
如果from被設(shè)為0,這意味著將文件的開頭作為移動(dòng)字節(jié)的參考位置。如果設(shè)為1,則使用當(dāng)前的位置作為參考位置。如果它被設(shè)為2,那么該文件的末尾將作為參考位置。
例子:
就用我們上面創(chuàng)建的文件foo.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打開一個(gè)文件
fo = open("/tmp/foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
 
# 查找當(dāng)前位置
position = fo.tell();
print "Current file position : ", position
 
# 把指針再次重新定位到文件開頭
position = fo.seek(0, 0);
str = fo.read(10);
print "Again read String is : ", str
# 關(guān)閉打開的文件
fo.close()

以上實(shí)例輸出結(jié)果:

Read String is : Python is
Current file position : 10
Again read String is : Python is


重命名和刪除文件

Python的os模塊提供了幫你執(zhí)行文件處理操作的方法,比如重命名和刪除文件。
要使用這個(gè)模塊,你必須先導(dǎo)入它,然后可以調(diào)用相關(guān)的各種功能。
rename()方法:
rename()方法需要兩個(gè)參數(shù),當(dāng)前的文件名和新文件名。
語法:

os.rename(current_file_name, new_file_name)


例子:
下例將重命名一個(gè)已經(jīng)存在的文件test1.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 重命名文件test1.txt到test2.txt。
os.rename( "test1.txt", "test2.txt" )

remove()方法
你可以用remove()方法刪除文件,需要提供要?jiǎng)h除的文件名作為參數(shù)。
語法:

os.remove(file_name)


例子:
下例將刪除一個(gè)已經(jīng)存在的文件test2.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 刪除一個(gè)已經(jīng)存在的文件test2.txt
os.remove("text2.txt")

相關(guān)文章

  • python中dump與dumps實(shí)現(xiàn)序列化

    python中dump與dumps實(shí)現(xiàn)序列化

    這篇文章就來介紹python中dump與dumps實(shí)現(xiàn)序列化,文章將圍繞dump與dumps實(shí)現(xiàn)序列化展開內(nèi)容且簡精,需要的朋友可以參考一下,希望對(duì)你有所幫助
    2021-10-10
  • python環(huán)境變量配置流程

    python環(huán)境變量配置流程

    這篇文章主要為大家介紹了python環(huán)境變量配置流程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-02-02
  • Python3實(shí)現(xiàn)的字典、列表和json對(duì)象互轉(zhuǎn)功能示例

    Python3實(shí)現(xiàn)的字典、列表和json對(duì)象互轉(zhuǎn)功能示例

    這篇文章主要介紹了Python3實(shí)現(xiàn)的字典、列表和json對(duì)象互轉(zhuǎn)功能,結(jié)合實(shí)例形式分析了Python使用json模塊針對(duì)json格式數(shù)據(jù)編碼轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • 詳解Python如何檢查一個(gè)數(shù)字是否為科技數(shù)

    詳解Python如何檢查一個(gè)數(shù)字是否為科技數(shù)

    科技數(shù)(Tech?Number)是一種在數(shù)學(xué)上具有一定特殊性質(zhì)的數(shù)字,這篇文章主要為大家詳細(xì)介紹了如何使用Python檢查一個(gè)數(shù)字是否為科技數(shù),感興趣的可以了解下
    2024-03-03
  • python基于gevent實(shí)現(xiàn)并發(fā)下載器代碼實(shí)例

    python基于gevent實(shí)現(xiàn)并發(fā)下載器代碼實(shí)例

    這篇文章主要介紹了python基于gevent實(shí)現(xiàn)并發(fā)下載器代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 解決python中無法自動(dòng)補(bǔ)全代碼的問題

    解決python中無法自動(dòng)補(bǔ)全代碼的問題

    今天小編就為大家分享一篇解決python中無法自動(dòng)補(bǔ)全代碼的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python繪圖之桃花盛開

    Python繪圖之桃花盛開

    這篇文章主要介紹了如何用python繪制桃花樹,幫助大家更好的使用python處理圖片,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • python和pywin32實(shí)現(xiàn)窗口查找、遍歷和點(diǎn)擊的示例代碼

    python和pywin32實(shí)現(xiàn)窗口查找、遍歷和點(diǎn)擊的示例代碼

    這篇文章主要介紹了python和pywin32實(shí)現(xiàn)窗口查找、遍歷和點(diǎn)擊的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Tensorflow2.1 MNIST圖像分類實(shí)現(xiàn)思路分析

    Tensorflow2.1 MNIST圖像分類實(shí)現(xiàn)思路分析

    這篇文章主要為大家介紹了Tensorflow2.1 MNIST圖像分類實(shí)現(xiàn)思路分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Python基于Pymssql模塊實(shí)現(xiàn)連接SQL Server數(shù)據(jù)庫的方法詳解

    Python基于Pymssql模塊實(shí)現(xiàn)連接SQL Server數(shù)據(jù)庫的方法詳解

    這篇文章主要介紹了Python基于Pymssql模塊實(shí)現(xiàn)連接SQL Server數(shù)據(jù)庫的方法,較為詳細(xì)的分析了pymssql模塊的下載、安裝及連接、操作SQL Server數(shù)據(jù)庫的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-07-07

最新評(píng)論

和平县| 辰溪县| 达孜县| 土默特左旗| 贵南县| 南汇区| 临澧县| 襄樊市| 龙岩市| 沐川县| 错那县| 务川| 社会| 韩城市| 库车县| 商南县| 台中县| 轮台县| 眉山市| 宾阳县| 桦川县| 白山市| 丘北县| 白银市| 元江| 大埔县| 新沂市| 子长县| 垫江县| 蓬溪县| 龙江县| 墨玉县| 泗水县| 运城市| 文登市| 类乌齐县| 阆中市| 安泽县| 古丈县| 定边县| 怀仁县|