Python ユーザーマニュアル <7> 最終章 - ファイルと例外

目次

1. ファイルからデータを読み取ります

1.1 ファイルを開く open()

1.1.1 同じディレクトリにないファイルを開く

1.1.2 エンコード設定

1.2 ファイルを閉じる

1.2.1 キーワードを含む

1.2.2 閉じる()

1.3 ファイルの読み取り

1.3.1 一行ずつ読む

2.ファイルへの書き込み

2.1空のファイルを書き込む

2.2実際のパラメータを開く 

3. 異常

3.1 ZeroDivisionError 例外

3.2 サイレント例外

4. データの保管

4.1jsonモジュールはデータを保存します

json.dump()

json.load()


1. ファイルからデータを読み取ります

with open('txttest.txt') as file_object:
    contents=file_object.read()
print(contents)

必ず同じディレクトリにファイルを保存してください

1.1 ファイルを開く open()

ファイルを開く関数。ファイルを使用するには、まずファイルを開く必要があります。

ファイル名を括弧内に書きます

戻り値はファイルを表すオブジェクトです

ここではas を使用して変数に値を代入します

1.1.1 同じディレクトリにないファイルを開く

次のレベルのファイルを開く方法

with open('text_files/filename.txt') as file_object:

 注: Windows ではパスを表すために \ が使用されますが、影響はありません。

1.1.2 エンコード設定

filename='text_files/filename.txt'
with open(filename,encoding='utf-8') as f:

1.2 ファイルを閉じる

1.2.1 キーワードを含む

ファイルを使用しないときは閉じてください

1.2.2 閉じる()

もちろんcloseでファイルを閉じることもできますが、バグなどでプログラムが中断した場合、

データが破損したり消失したりする可能性もあります。

1.3 ファイルの読み取り

ファイル オブジェクトの後に .read を追加します

そしてファイルを文字列として変数に代入します

read は最後に空白行を返すことに注意してください。

.rstrip()を使用して削除できます

1.3.1 一行ずつ読む

#...
    lines = file_object.readlines()
for line in lines:
    print(line.restrip())

2.ファイルへの書き込み

2.1空のファイルを書き込む

このとき、open()の2番目に実パラメータを追加する必要があります。

with open('txttest.txt','w') as file_object:
    file_object.write('i love you')

2.2実際のパラメータを開く 

「r」を読みます

「w」は書きます

'a' 追加 (write と似ていますが、元のテキストの内容は上書きされません)

'r+' 読み取りおよび書き込み

3. 異常

プログラム内で例外が発生すると、py は例外オブジェクトを作成し、それが処理されない場合、プログラムは自動的に停止します

Try-Except を使用して例外を修正する

3.1 ZeroDivisionError 例外

print(5/0)

エラーを報告する 

Traceback (most recent call last):
  File "E:\learning\python\coursework\error.py", line 1, in <module>
    print(5/0)
          ~^~
ZeroDivisionError: division by zero#异常对象

 解決

try:
    a=input()
    b=input()
    print(a/b)
except ZeroDivisionError:
    print('infinity ')
else:
    print(answer)

例外が発生するコードブロックを try: 内に配置し、以下の解決策を記述します。

3.2 サイレント例外

try:
    a=input()
    b=input()
    print(a/b)
except ZeroDivisionError:
    pass
else:
    print(answer)

キーワードを渡す: 何もしない

4. データの保管

4.1jsonモジュールはデータを保存します

JSON(JavaScript オブジェクト記法)

json.dump()

#两个实参,第一个是储存数据,第二个是文件对象
import json
numbers=[1,2,3]
filename='a.json'
with open(filename,'w') as f:
    json.dump(numbers,f)

json.load()

import json
filename='a.json'
with open(filename) as f:
    json.load(f)

おすすめ

転載: blog.csdn.net/weixin_60787500/article/details/127783114