LeonardCohenX 发表于 2021-8-18 17:09:34

Python中使用 try—except模块出现失误

本帖最后由 LeonardCohenX 于 2021-8-18 17:12 编辑

源代码:
import json
# 如果以前存储了用户名,就加载它
#否则,就提示用户输入用户名并存储它
filename = 'username.json'
try:
    with open(filename) as f_obj:
      username = json.load(f_obj)
except FileNotFoundError:
    username = input("What is your name? ")
    with open(filename, 'w') as f_obj:
      json.dump(username, f_obj)
      print("We'll remember you when you come back, "+username+"!")
else:
    print("Welcome back, "+username+"!")
如果之前没有username.json这个文件,那上面的代码可以正常运行,即能够创建这个文件,但是如果我提前创建这个文件,文件里不写入内容,或者运行后,把username.json中的文件删除然后重新运行,上面的代码也无法运行,显示报错。但是,上面的代码中我已经使用了try—except模块,可是却没运行起来,我这个可能在原理上除了错误,有朋友可以帮帮我吗,我实在不知道问题在哪里?

louxinghao 发表于 2021-8-18 17:22:08

报错信息呢

大马强 发表于 2021-8-18 17:30:45

我这没报错呀,我删掉再运行它就给我重新搞一个新的
https://static01.imgkr.com/temp/b66959fc1cd4425995e50837eab274be.jpg

LeonardCohenX 发表于 2021-8-18 18:34:55

大马强 发表于 2021-8-18 17:30
我这没报错呀,我删掉再运行它就给我重新搞一个新的

你输入名字运行后会自动创建一个username.json,然后你把文件里面的内容删除,这个文件留着,你在打印一下,看会不会出现我说的内容

LeonardCohenX 发表于 2021-8-18 18:36:03

louxinghao 发表于 2021-8-18 17:22
报错信息呢

我说的报错信息是直接停止运行,而不是打印出报错信息

大马强 发表于 2021-8-18 20:21:54

我这还有
https://static01.imgkr.com/temp/18b4eeb415544d84bcb04bdb6ada8356.jpg
页: [1]
查看完整版本: Python中使用 try—except模块出现失误