python - [Errno 2] No such file or directory: '我为什么是一个文件,为什么返回值是这样的呢?
大家讲道理
大家讲道理 2017-04-18 10:19:03
0
3
807

try:
    f=open('我为什么是一个文件.txt')
    print(f.read())
    f.close()
except OSError as reason:
    print('文件出错了n错误的原因是:'+str(reason))
文件出错了
错误的原因是:[Errno 2] No such file or directory: '我为什么是一个文件

如果不加as reason返回的就是

try:
    f=open('我为什么是一个文件.txt')
    print(f.read())
    f.close()
except OSError:                      #ose要大写 才能有正确报错
    print('文件出错了')
文件出错了

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全員に返信(3)
迷茫

OSError は Python の組み込み例外であり、Python 変数は大文字と小文字が区別されます
https://docs.python.org/2/lib... を参照してください

また、ファイルが存在しない場合、何も書かずにただ書き込むとエラーが報告されます

いいねを押す +0
黄舟

理由として OSError を除く => OSError 例外をキャプチャして理由に割り当てるため、print('ファイルにエラーがあり、エラーの理由は:'+str(reason)) するときに、理由をつなぎ合わせます。例外を完全な文にトリガーする エラーは try を実行することを意味します。実行が失敗した場合は、Exception

を実行します。
いいねを押す +0
巴扎黑

次のように変更します。
これはIOErrorです

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート