pythonopenni
① python中用open保存文本到桌面
編輯器中打開相同的文件時,它會給我一個空白文件。創建並保存文件。
Python中的open函數可以打開並保存文本數據。open是多種語言、環境的一種函數,LINUX中open函數作用。打開和創建文件。PB程序語言中open功能。打開窗口。
open是UNIX系統(包括LINUX、Mac等)的系統調用函數,區別於C語言庫函數fopen。對於open函數來說,第三個參數僅當創建新文件時(即使用了O_CREAT時)才使用,用於指定文件的訪問許可權位(accesspermissionbits)。pathname是待打開/創建文件的POSIX路徑名(如/home/user/a。cppflags用於指定文件的打開/創建模式,這個參數可由以下常量(定義於fcntl。h)通過邏輯位或邏輯構成。
② python用open打開文件讀寫,「w」會替換,「a」多次調用函數會重復
print語句print [expression ("," expression)* [","]]print >> expression [("," expression)+ [","]][]表示可選項,*表示零次或多次重復,+表示至少一次重復。print是一種特殊的語句,它用於在stdout輸出字元串。print有多種使用形式:print xprint x,yprint x,y,print >> object, x, y第1行是print的最普通的形式。第2行用print一次輸出多個變數值,print會在變數之間自動加上一個"空格"。第3行與第2行的不同是在y的後面多了一個",",這個逗號用來阻止print在列印出x和y的值後,自動附加上一個「\n」字元。第4行,是一種輸出重定向的形式,也就是說把x和y的值輸出到object的write方法中,這同時也表明object必須有一個write方法。在python中,print語句其實只是一種簡寫形式,是下面這段程序的簡寫:import syssys.stdout.write(str(x) + '\n')上面這兩行合起來就是「print x」這一句。可以看出,print是調用str()函數來產生字元串的,並且會在輸出的字元串後加上一個'\n'字元。由於print實際是上調用了stdout的write方法。程序員也可以把stdout賦為別的值,從面實現print的輸出重定向的功能。比如:import sysx="I'm here!"fp=file('log.txt','a')sys.stdout=fpprint x第4行改變了stdou的值,而且fp也是一個文件對象,有一個write方法。這一小段代碼的功能是把print的輸出全部以appand的模式寫到了文件log.txt中。在第4行之後的print語句,都是這種功能。現在假設要恢復print輸出到標准輸出的功能,那麼就需要讓stdout重新指向標准輸出,可以使用如下的方式:sys.stdout=sys.__stdout__在sys.__stdout__中保存有指向標准輸出的信息,通過這行代碼,print可以恢復為原來的功能。有時候要在這兩種模式之間換來換去,一會要輸出到文件中,一會要輸出到標准輸出中,通過改變sys.stdout的值可以實現,不過太麻煩,python提供了另外一種簡便的print語句形式,來解決這種需求:print >> object,x,y能過>>這個符號,可以實現輸出重定向到object,當然object必須有一個write方法。否則會出現AttributeError。注意,在這種print形式中,sys.stdout並沒有改變,也就是說在這之後的print語句,具有的還是標准功能。雖然print語句實際上sys.stdou.write(),但sys模塊的import工作並不需要程序員操心,python會自動處理。類似於print的輸出,當用內置函數raw_input([prompt])進行讀取操作時,實際上用的是sys.stdin.read()方法。也可以通過改變stdin的值來控制入操作。相應的也有一個sys.__stdin__用來保存標准輸入的信息。
③ python 中open()的用法
open(文件名,打開模式,緩沖模式)
打開模式為r(讀) ,w(寫),b(二進制),a(追加),r+,w+(讀寫)
④ python的open打開的是哪裡的文件啊
如果文件名是相對路徑名,則是以當前目錄為基點的路徑名。
假設當前路徑為/home/foo,則open('file.txt', 'rb')打開的是/home/foo/file.txt。
當前路徑默認是你啟動程序的目錄,例如:
$ pwd
/home/foo
$ ../goo/bin/look.py
此時,「當前路徑」應該是/home/foo,而不是/home/goo/bin
在程序中,可以通過os.getcwd()獲得當前路徑,也可以利用os.chdir()來改變當前路徑。
最後,如果你讀某文件沒有訪問許可權,open也是會報錯的(錯誤信息會詳細提示原因)。
⑤ Python使用open函數打開文件的常用模式
要以讀文件的模式打開一個文件對象,使用Python內置的open()函數,傳入文件名和標示符:
f = open('/Users/michael/test.txt', 'r')
標示符'r'表示讀,這樣,我們就成功地打開了一個文件。
如果文件不存在,open()函數就會拋出一個IOError的錯誤,並且給出錯誤碼和詳細的信息告訴你文件不存在:
這和前面的try ... finally是一樣的,但是代碼更佳簡潔,並且不必調用f.close()方法。
調用read()會一次性讀取文件的全部內容,如果文件有10G,內存就爆了,所以,要保險起見,可以反復調用read(size)方法,每次最多讀取size個位元組的內容。另外,調用readline()可以每次讀取一行內容,調用readlines()一次讀取所有內容並按行返回list。因此,要根據需要決定怎麼調用。
如果文件很小,read()一次性讀取最方便;如果不能確定文件大小,反復調用read(size)比較保險;如果是配置文件,調用readlines()最方便;
⑥ python打開文件(open)問題,補全代碼
[line for line in lines if not line.startswith('#')]
然後打開readme並寫入
⑦ python文作操作函數open()
1.並非只能訪問文本文件
open可以訪問任何形式的文件,在訪問非文本格式文件(二進制文件)的時候,訪問模式通常加上『b』(即二進制模式:『rb』或『wb』),但並不必須,依情況而定
2.路徑是填寫在前面的filename參數處的
如你的例子,若要只讀這個文件,則是:
open('D:\\123.txt', 'r')
(由於\是轉義符,所以要將他再轉義,才能得到\符號本身)
若要寫入,則是:
open('D:\\123.txt', 'w')
以此類推
如果是不加路徑,只有一個文件名:
open('123.txt', 'r')
則會在python運行的當前目錄下尋找該文件名的文件
另:讀模式(r)必須保證文件存在,寫模式(w)至少要保證文件所在目錄存在(文件本身可以不存在)
如果不滿足,則系統會拋出一個IOError
⑧ 軟體測試中,python 中 open與with open 的區別
open函數
1.open函數: file=open(filename, encoding='utf-8'),open()函數是Python內置的用於對文件的讀寫操作,返回的是文件的流對象(而不是文件本身,所以使用的方法都是流對象的方法)。使用這個函數時可以指定encoding參數(Python2.7中不支持),因為Python代碼在不同的平台環境中使用的默認編碼方式不同,有可能會發生編譯出錯的問題。
2. filename參數:在open中的文件名參數filename中,包含的路徑表示雖然可以根據不同的環境使用斜杠和反斜杠,但在Python中表路徑時,斜杠都是正確的。
3. 文件操作對象file:流對象file,即open的默認模式下的返回值。使用for循環對對象file進行迭代時,每次迭代都會自動分離出一行(效果相當於對readlines結果的for循環遍歷):
with創建臨時運行環境
作用:with用於創建一個臨時的運行環境,運行環境中的代碼執行完後自動安全退出環境。
文件操作:使用open進行文件操作使建議使用with創建運行環境,可以不用close()方法關閉文件,無論在文件使用中遇到什麼問題都能安全的退出,即使發生錯誤,退出運行時環境時也能安全退出文件並給出報錯信息。
with open(』/path/to/file』, 『r』) as f:
print(f.read())
這和前面的try … finally是一樣的,但是代碼更佳簡潔,並且不必調用f.close()方法。
如果想了解跟多相關的執行可以來傳智播客軟體測試學習
⑨ python用open打開文件顯示無法解碼什麼鬼我應該沒寫錯啊
文件編碼格式有問題撒
請在f定義的時候,指定編碼格式,並且文件保存的時候指定編碼格式
希望可以幫助你 請採納 謝謝