どうも、ハワイ在住のニホンザル、py_pauと申します。
プログラミング言語 pythonの勉強をしています。
pythonの勉強日記がメインですが、ハワイ生活なども発信できたらと思います。
***********************************************************************************
ハワイから所変わって、岩手県が八幡平市というところに来ています。
天変地異レベルの気温の差を体感しています。
温泉宿に泊めさせていただき、約4年ぶりの日本を満喫しております。
****************************************************
今日の学習内容(長いのでです・ます調はやめます。)
※環境がwindowからmacになりました。うーん、なれない
・ファイル操作の一連の流れ
open
read/write
close→ しないと大変なことになることがあることがある
開けたら閉める!これ常識!!
・open()function:「リソースの獲得」
open(ファイル名, mode)
指定されたモードで特定のファイルオブジェクトを返す
<モードの種類>
r="Read": 読み込み。もし指定されたファイルが無かったら"file not foud"エラーを起こす
w="Write":書き出し。指定されたファイルがなければ作り、あれば一度データを全て消去した上で書き出す。
a= "append": ファイルが無ければ作り、あればそのファイルの末尾にデータを付け足す。
b="Binary":バイナリーファイルに"r"または"w"モードと同じことをする
・close()function: 「リソースの開放」
ファイルを閉じて、全てのオペレーションを終了する。
OpenからCloseまでの一連の流れにexception = 例外的なことが起こると、ファイルが閉じられず、リソースの開放がされずに問題が起きてしまう可能性がある。
それを避けるためにあるのがwith as の構文
with open("ファイル名、モード名") as ファイルオブジェクト:
(例)writeモードでテキストファイルを開き、自動的に閉じるコード
ちなみに、"r=read モードでwriteしようとすると、こんなエラーが出ます。
io.UnsupportedOperation: not writable
rモードではwriteすることはサポートされてないってことですね。
・write()メソッド
"w"モードと" a"モードで使用可能
文字列の改行と同じように、\nを入力することで改行する。
例)
・read()メソッド
>read():ファイル全体を読み込んで文字列として返す
"""実行結果"""
John Conor
Sarah Conor
>readlines():ファイル全体を読み込んでリストとして返す
"""実行結果"""
['John Conor\n', 'Sarah Conor']
>readline():一行だけ読み込んで文字列で返す
"""実行結果"""
John Conor
変数名とかクラス名とかの複数形って死ねばいいと思います。何度エラーをおこしたことか。
*********************************
約一ヶ月半振りの更新ですが、再スタートしていこうと思います。
ツイッターもやってるのでフォローお願いします
https://twitter.com/py_pau3939