pythone learning

open関数

open関数はファイルを開くための関数です。
print関数の様に、モジュールの読み込み無しで使える関数です。
戻り値として開いたファイルの「File オブジェクト」を返します。
通常、オブジェクトは変数に代入して用います。
Fileはコンピューター内部的に開くので、画面には表示されません。

書式

open(目的のCSVファイル名,'モード', newline)

上記第一引数は、目的のCSVファイル名(拡張子も含む)を文字列として指定します。

上記第二引数はモードです。モードはファイルの読み込み方に種類がある為、指定する必要があります。

例えば、文字列「a」を指定します。これはデータを追記する形式(追記モード)でCSVファイルを開く事を指定しています。
open(目的のCSVファイル名,'a', newline)

open関数のモード一覧 は下記となります

文字

 意味

'r'

読み込み用に開く (デフォルト)

'w'

書き込み用に開き、まずファイルを切り詰める

'x'

排他的な生成に開き、ファイルが存在する場合は失敗する

'a'

書き込み用に開き、ファイルが存在する場合は末尾に追記する

'b'

バイナリモード

't'

テキストモード (デフォルト)

'+'

ディスクファイルを更新用に開く (読み込み/書き込み)

 

上記第三引数は、「newline=''」をしてします。
これは、OSに応じて改行コードを出力するためです。

Windows上でPythonからファイル書き込みを行った場合、デフォルトでは改行コードが強制的にCRLFに変更されます。
newlineを指定しない場合、デフォルトではNoneになります。このときの動作は、\r\n\r\nを改行コードとしてみなして、勝手に全部\nとして扱います。
newline=''とすると、改行コードを変換せずそのまま扱います。

 

書式例

f=open('mydata.csv , 'a' , newline='')

 

 

関係する説明

write関数

writerow メソッド

closeメソッド