Python 3 學習筆記之——鍵盤輸入和讀寫檔案
1. 鍵盤輸入
- Python提供了 input() 內建函式從標準輸入讀入一行文字,預設的標準輸入是鍵盤。input 可以接收一個 Python 表示式作為輸入,並將運算結果返回。
str = input("請輸入:");
print ("你輸入的內容是: ", str)
>>>
請輸入:菜鳥教程
你輸入的內容是: 菜鳥教程
2. 讀寫檔案
-
open() 將會返回一個 file 物件,基本語法格式如下:
-
open(filename, mode)
- filename:包含了你要訪問的檔名稱的字串值。
- mode:決定了開啟檔案的模式:只讀,寫入,追加等。所有可取值見如下的完全列表。這個引數是非強制的,預設檔案訪問模式為只讀®。
- f.read() 為了讀取一個檔案的內容,呼叫 f.read(size), 這將讀取一定數目的資料, 然後作為字串或位元組物件返回。size 是一個可選的數字型別的引數。當 size 被忽略了或者為負, 那麼該檔案的所有內容都將被讀取並且返回。
>>> f = open('test.txt', 'r')
>>> a = f.read()
>>> a
'1 2 3\n4 5 6\nHello, seniusen!\n'
- f.readline() 會從檔案中讀取單獨的一行。換行符為 ‘\n’。f.readline() 如果返回一個空字串, 說明已經已經讀取到最後一行。
>>> f = open('test.txt', 'r')
>>> b = f.readline()
>>> b
'1 2 3\n'
>>> b[0]
'1'
>>> b[1]
' '
>>> b[2]
'2'
>>> b = f.readline()
>>> b
'4 5 6\n'
>>> b = f.readline()
>>> b
'Hello, seniusen!\n'
>>> b = f.readline()
>>> b
''
- f.readlines() 將返回該檔案中包含的所有行。如果設定可選引數 sizehint, 則讀取指定長度的位元組, 並且將這些位元組按行分割。
>>> f = open('test.txt', 'r')
>>> for i in f.readlines():
... print(i)
...
1 2 3
4 5 6
Hello, seniusen!
- 另一種方式是迭代一個檔案物件然後讀取每行。
>>> f = open('test.txt', 'r')
>>> for line in f:
... print(line)
...
1 2 3
4 5 6
Hello, seniusen!
-
f.write(string) 將 string 寫入到檔案中, 然後返回寫入的字元數。如果要寫入一些不是字串的東西, 那麼將需要先進行轉換。
-
f.tell() 返回檔案物件當前所處的位置, 它是從檔案開頭開始算起的位元組數。
-
如果要改變檔案當前的位置, 可以使用 f.seek(offset, from_what) 函式。from_what 的值, 如果是 0 表示開頭, 如果是 1 表示當前位置, 2 表示檔案的結尾,from_what 值為預設為0,即檔案開頭。
- seek(x, 0) :從起始位置即檔案首行首字元開始移動 x 個字元
- seek(x, 1) :表示從當前位置往後移動 x 個字元
- seek(-x, 2):表示從檔案的結尾往前移動 x 個字元
-
當你處理完一個檔案後, 呼叫 f.close() 來關閉檔案並釋放系統的資源。
-
當處理一個檔案物件時, 使用 with 關鍵字是非常好的方式。在結束後, 它會幫你正確的關閉檔案。
>>> f = open('test.txt', 'r')
>>> f.tell()
0
>>> b = f.readline()
>>> f.tell()
6
>>> f.seek(2, 0)
2
>>> f.read(1)
'2'
>>> f.close()
>>> f
<_io.TextIOWrapper name='test.txt' mode='r' encoding='UTF-8'>
>>> f.closed
True
>>> with open('test.txt') as f:
... print(f.readline())
...
1 2 3
>>> f.closed
True
參考資料 菜鳥教程
獲取更多精彩,請關注「seniusen」!
相關文章
- python學習之讀寫檔案Python
- C++學習筆記----讀寫檔案C++筆記
- Python學習筆記|Python之檔案操作Python筆記
- Python學習筆記|Python之特殊檔案Python筆記
- C++ 學習筆記之——輸入和輸出C++筆記
- php 之讀取鍵盤輸入PHP
- 學習筆記(30):Python資料清洗實戰-Excel檔案讀寫筆記PythonExcel
- python檔案建立、讀取和寫入Python
- Python零基礎學習筆記(三十)——讀檔案Python筆記
- Python 3 學習筆記之——錯誤和異常Python筆記
- 《Python Cookbook 3rd》筆記(5.17):將位元組寫入文字檔案Python筆記
- python3學習筆記之 強引用和弱引用Python筆記
- 【python系統學習17】python中的檔案讀寫Python
- Python之檔案讀寫小練Python
- 01_Numpy學習筆記(下):輸入和輸出筆記
- JVM學習筆記——Class類檔案解讀JVM筆記
- python-input鍵盤輸入Python
- Python 3 學習筆記之——物件導向Python筆記物件
- Python檔案讀寫、StringIO和BytesIOPython
- python學習筆記:第8天 檔案操作Python筆記
- Android學習筆記之build.gradle檔案Android筆記UIGradle
- Sharding-Jdbc學習筆記二之讀寫分離專案配置篇JDBC筆記
- Python 讀寫檔案Python
- Python——檔案讀寫Python
- 「Python」:檔案讀寫Python
- Python 3 學習筆記之——資料型別Python筆記資料型別
- Python 3 學習筆記之——基礎語法Python筆記
- Python 3 學習筆記之類與例項Python筆記
- Android學習筆記之檔案分類和線性佈局Android筆記
- dotnet學習筆記-專題04-配置的讀取和寫入-01筆記
- Python 3 學習筆記之——變數作用域、模組和包Python筆記變數
- 如何讀取和寫入JSON檔案JSON
- csv檔案的寫入和讀取
- Python學習筆記|Python之程式Python筆記
- 4、Linux入門學習筆記 檔案操作命令Linux筆記
- Python3學習筆記-字串和編碼Python筆記字串
- VC++學習筆記---配置檔案(一) ini檔案和propritiesC++筆記
- Python 檔案讀寫(Python IO)Python