ページへ戻る
印刷
Python/ファイルの読み書き
をテンプレートにして作成 ::
NJF Wiki
xpwiki
:Python/ファイルの読み書き をテンプレートにして作成
開始行:
*始めに
データの保存や読み込みのため、Pythonでファイルを読み書き...
しかし、PythonではCSVやデータベース、設定ファイルの読み書...
もしすでにファイル操作について知っていて、かつ対象とする...
-[[Python/設定ファイルの読み込み]]
-[[Python/CSVファイルの読み込みと書き込み]]
-[[Python/loggingを使ったログの出力]]
-[[Python/SQLiteから使う基礎]]
-[[Python/MySQLから使う基礎]]
その他、「[[Python]]」を参照のこと。
*ファイルのオープンとクローズ
ファイルのオープンは「open」を使います。
この操作によって、今からどのファイルをどのようにあつかう...
f = open("test.txt","r")
第一引数がファイル名、第二引数が読み込みモードです。第二...
|読み込みモード名|意味|
|r|読み込み専用|
|w|書き込み専用|
|a|追記|
|r+|読み書き両方|
|省略|読み込み専用(r)|
この中でも特に「w」は元のファイルが消えて最初からファイル...
文字コード指定で開くには「codecs.open」を使います。
import codecs
f = codecs.open('test01.txt', 'r','utf-8')
こうすると読み込んだ文字列がunicode型になっています。
普通のopenだとstr型で読み込まれるため、それをunicodeに変...
ファイルのクローズは「close」を使います。
f.close()
Pythonのプログラム自体が終了すると一緒にファイルもたいて...
クローズしたファイルはまたオープンするまで使えません。ク...
if f.closed:
print "closed!"
例外が発生したりしても必ず自動でcloseしてくれる記法として...
with open('test.txt', 'r') as f:
#何か処理
こちらの方が安全なので、積極的に使っていくと良いでしょう。
複数ファイルを開くときには
with open('test01.txt', 'w') as f1, open('test02.txt','w...
#何か処理
と列挙できます。しかし、オープンやクローズのタイミングを...
固定で数個のファイルを開くならwith、たくさんのファイルを...
*ファイルの読み込み
テキストファイルを一行ずつ読み、表示するなら
f = open('test01.txt', 'r')
for l in f:
print l
f.close()
となります。
この時、変数「l」には改行コードも含まれています。
そのため上の例ではprintの改行とあわせて空白行が出てしまい...
それを取り除くには「strip」を使います。
for l in f:
print l.strip()
まとめて読み込みたい場合は「read」を使います。
以下の例ではファイルの内容をそのまま表示します。
f = open('test01.txt', 'r')
print f.read()
f.close()
*ファイルの書き込み
ファイルの書き込みにはwriteを使います。
以下の例では「テスト」という行がファイルの中で一行ずつ増...
# -*- coding: utf-8 -*-
f = open('test01.txt', 'a')
f.write("テスト\n")
f.close()
writelinesを使うと複数行をまとめて書くことも出来ます。
以下の例では「テスト0です」「テスト1です」というような行...
# -*- coding: utf-8 -*-
f = open('test01.txt', 'a')
lines = []
for i in range(10):
lines.append("テスト%dです\n" % i)
f.writelines(lines)
f.close()
*終わりに
ここではテキストファイルを中心としたPythonでのファイルの...
データの量が多くなったり、データ構造が複雑な場合は最初に...
独自形式のファイルなどを作ろうとすると、意外に大変です。...
終了行:
*始めに
データの保存や読み込みのため、Pythonでファイルを読み書き...
しかし、PythonではCSVやデータベース、設定ファイルの読み書...
もしすでにファイル操作について知っていて、かつ対象とする...
-[[Python/設定ファイルの読み込み]]
-[[Python/CSVファイルの読み込みと書き込み]]
-[[Python/loggingを使ったログの出力]]
-[[Python/SQLiteから使う基礎]]
-[[Python/MySQLから使う基礎]]
その他、「[[Python]]」を参照のこと。
*ファイルのオープンとクローズ
ファイルのオープンは「open」を使います。
この操作によって、今からどのファイルをどのようにあつかう...
f = open("test.txt","r")
第一引数がファイル名、第二引数が読み込みモードです。第二...
|読み込みモード名|意味|
|r|読み込み専用|
|w|書き込み専用|
|a|追記|
|r+|読み書き両方|
|省略|読み込み専用(r)|
この中でも特に「w」は元のファイルが消えて最初からファイル...
文字コード指定で開くには「codecs.open」を使います。
import codecs
f = codecs.open('test01.txt', 'r','utf-8')
こうすると読み込んだ文字列がunicode型になっています。
普通のopenだとstr型で読み込まれるため、それをunicodeに変...
ファイルのクローズは「close」を使います。
f.close()
Pythonのプログラム自体が終了すると一緒にファイルもたいて...
クローズしたファイルはまたオープンするまで使えません。ク...
if f.closed:
print "closed!"
例外が発生したりしても必ず自動でcloseしてくれる記法として...
with open('test.txt', 'r') as f:
#何か処理
こちらの方が安全なので、積極的に使っていくと良いでしょう。
複数ファイルを開くときには
with open('test01.txt', 'w') as f1, open('test02.txt','w...
#何か処理
と列挙できます。しかし、オープンやクローズのタイミングを...
固定で数個のファイルを開くならwith、たくさんのファイルを...
*ファイルの読み込み
テキストファイルを一行ずつ読み、表示するなら
f = open('test01.txt', 'r')
for l in f:
print l
f.close()
となります。
この時、変数「l」には改行コードも含まれています。
そのため上の例ではprintの改行とあわせて空白行が出てしまい...
それを取り除くには「strip」を使います。
for l in f:
print l.strip()
まとめて読み込みたい場合は「read」を使います。
以下の例ではファイルの内容をそのまま表示します。
f = open('test01.txt', 'r')
print f.read()
f.close()
*ファイルの書き込み
ファイルの書き込みにはwriteを使います。
以下の例では「テスト」という行がファイルの中で一行ずつ増...
# -*- coding: utf-8 -*-
f = open('test01.txt', 'a')
f.write("テスト\n")
f.close()
writelinesを使うと複数行をまとめて書くことも出来ます。
以下の例では「テスト0です」「テスト1です」というような行...
# -*- coding: utf-8 -*-
f = open('test01.txt', 'a')
lines = []
for i in range(10):
lines.append("テスト%dです\n" % i)
f.writelines(lines)
f.close()
*終わりに
ここではテキストファイルを中心としたPythonでのファイルの...
データの量が多くなったり、データ構造が複雑な場合は最初に...
独自形式のファイルなどを作ろうとすると、意外に大変です。...
ページ名: