4: 2017-06-13 (火) 18:01:07 njf ソース バックアップ No.4 を復元して編集 現: 2017-09-05 (火) 13:09:53 njf ソース 編集
Line 45: Line 45:
 f.close()  f.close()
-Pythonのプログラム自体が終了すると一緒にファイルもたいていクローズされますが、closeを忘れて大量にファイルを開くとエラーが発生したりするので、ファイルを使い終わったら忘れずにcloseしましょう。+Pythonのプログラム自体が終了すると一緒にファイルもたいてい自動でクローズされます。しかし、ファイルを一度に開ける数には制限があります。ループの中などでcloseを忘れて大量にファイルを開くとエラーが発生することもあり、テストで少ないファイルを開いているときは大丈夫だったのに、いざ本番ではエラーになるといった、やっかいなバグの原因になることもあります。ファイルを使い終わったら習慣的に必ずcloseしましょう。
クローズしたファイルはまたオープンするまで使えません。クローズしたかどうかは「closed」で確認できます。 クローズしたファイルはまたオープンするまで使えません。クローズしたかどうかは「closed」で確認できます。
Line 101: Line 101:
 # -*- coding: utf-8 -*-  # -*- coding: utf-8 -*-
 + 
 f = open('test01.txt', 'a')  f = open('test01.txt', 'a')
 lines = []  lines = []
 + 
 for i in range(10):  for i in range(10):
     lines.append("テスト%dです\n" % i)      lines.append("テスト%dです\n" % i)
 + 
 f.writelines(lines)  f.writelines(lines)
 f.close()  f.close()
Line 113: Line 113:
*終わりに [#k383a515] *終わりに [#k383a515]
-ここではテキストファイルを中心としたPythonでのファイルの読み書きをご紹介しましたが、Pythonではバイナリファイルなどもほぼ同様にして扱えます。ただし大量のバイナリデータを扱うなどの場合はCやC++といった言語を使った方が処理が速いので良いかも知れません。+ここではテキストファイルを中心としたPythonでのファイルの読み書きをご紹介しましたが、Pythonではバイナリファイルなどもほぼ同様にして扱えます。しかし、少し工夫が必要で、また大量のバイナリデータを扱うなどの場合はCやC++といった言語を使った方が処理が速いので良いかも知れません。
データの量が多くなったり、データ構造が複雑な場合は最初に書いたようになるべく他のモジュールと組み合わせるのがおすすめです。 データの量が多くなったり、データ構造が複雑な場合は最初に書いたようになるべく他のモジュールと組み合わせるのがおすすめです。
独自形式のファイルなどを作ろうとすると、意外に大変です。学習を目的としているので無ければ、少なくとも個人レベルでは避けた方が無難です。 独自形式のファイルなどを作ろうとすると、意外に大変です。学習を目的としているので無ければ、少なくとも個人レベルでは避けた方が無難です。


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 347, today: 1, yesterday: 1
広告

ログイン

ユーザー名:


パスワード:





パスワード紛失


NJF