Python基礎學習筆記(十二)文件I/O

  參考資料:html

  1. 《Python基礎教程》python

  2. http://www.runoob.com/python/python-files-io.html函數

 

  ▶ 鍵盤輸入
spa

  注意raw_input函數和input函數的區別。指針

  raw_input函數使用實例:code

#!/usr/bin/python
 
str = raw_input("Input your string: ");
print "This is your input string: ", str

 

  input函數使用實例:htm

#!/usr/bin/python
 
str = input("Input your string: ");
print "This is your input string : ", str

 

  ▶ 打開和關閉文件對象

  open函數用於打開一個文件,建立一個file對象。blog

  語法以下:教程

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

  其中,access_mode的徹底列表以下:

模式 描述
r 以只讀方式打開文件。文件的指針將會放在文件的開頭。這是默認模式。
rb 以二進制格式打開一個文件用於只讀。文件指針將會放在文件的開頭。這是默認模式。
r+ 打開一個文件用於讀寫。文件指針將會放在文件的開頭。
rb+ 以二進制格式打開一個文件用於讀寫。文件指針將會放在文件的開頭。
w 打開一個文件只用於寫入。若是該文件已存在則將其覆蓋。若是該文件不存在,建立新文件。
wb 以二進制格式打開一個文件只用於寫入。若是該文件已存在則將其覆蓋。若是該文件不存在,建立新文件。
w+ 打開一個文件用於讀寫。若是該文件已存在則將其覆蓋。若是該文件不存在,建立新文件。
wb+ 以二進制格式打開一個文件用於讀寫。若是該文件已存在則將其覆蓋。若是該文件不存在,建立新文件。
a 打開一個文件用於追加。若是該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容以後。若是該文件不存在,建立新文件進行寫入。
ab 以二進制格式打開一個文件用於追加。若是該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容以後。若是該文件不存在,建立新文件進行寫入。
a+ 打開一個文件用於讀寫。若是該文件已存在,文件指針將會放在文件的結尾。文件打開時會是追加模式。若是該文件不存在,建立新文件用於讀寫。
ab+ 以二進制格式打開一個文件用於追加。若是該文件已存在,文件指針將會放在文件的結尾。若是該文件不存在,建立新文件用於讀寫。

 

  關於buffering,若是其值爲0,不會有寄存。若是爲1,會寄存。其它大於1的值,表示緩衝區的大小。負值,則寄存區的緩衝大小爲系統默認。

 

▶ File對象

  file對象相關的屬性列表以下:

屬性 描述
file.closed 返回true若是文件已被關閉,不然返回false。
file.mode 返回被打開文件的訪問模式。
file.name 返回文件的名稱。
file.softspace 若是用print輸出後,必須跟一個空格符,則返回false。不然返回true。

   

  寫文件實例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
test = open("/test/test.txt", "wb") test.write( "This is a test.\nThanks!\n"); fo.close()

  

  讀文件實例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打開文件
test = open("/test/test.txt", "r+")
str = test.read(10);
print "The string is : ", str
 
# 查找當前位置
position = test.tell();
print "Current file position : ", position
 
# 重定位指針到文件開頭
position = test.seek(0, 0);
str = test.read(10);
print "The string is : ", str
# 關閉打開的文件
fo.close()

 

  重命名文件實例(重命名test1.txt爲test2.txt):

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

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

  

  刪除文件實例(刪除剛纔的test2.txt):

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

import os
 
# 刪除文件test2.txt
os.remove("text2.txt")

 

  ▶ 目錄

  建立目錄實例:

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

import os
 
# 建立目錄test
os.mkdir("test")

 

  改變當前目錄(類同cd命令):

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

import os
 
# 將當前目錄改成"/home/test2"
os.chdir("/home/test2")

  

  獲得當前工做目錄實例:

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

import os
 
# 獲取當前工做目錄
str = os.getcwd()

 

  刪除目錄實例: 

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

import os
 
# 刪除」/home/x-man/test」目錄
os.rmdir("/home/x-man/test")
相關文章
相關標籤/搜索