zoukankan      html  css  js  c++  java
  • python 重构和JSON数据解析

    看到一个重构的例子,还能重温json数据解析
    #
    def GreetUser(): # filename = '/Users/zhangxl/Desktop/union.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(username) # else: # print("Welcome to " + username) def get_stored_username(): filename = '/Users/zhangxl/Desktop/union.json' try: with open(filename) as f_obj: username = json.load(f_obj) except FileNotFoundError: return None else: return username def get_new_username(): username = input("What is your name?:") filename = '/Users/zxl/Desktop/union.json' with open(filename,'w') as f_obj: json.dump(username,f_obj) return username def greet_user(): username = get_stored_username() if username: print("Welcome back ," + username ) else: username = get_new_username() print("We will remember you when you come back" + username) greet_user()

    遇到问题:当文件内容为空是,会报错 。带运行一次后,我删除:union.json 文件内容,报错:raise JSONDecodeError("Expecting value", s, err.value) from None
    json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0),所以我添加了一个ValueError

  • 相关阅读:
    UVA11464偶数矩阵
    UVA11464偶数矩阵
    UVA11462年龄排序
    UVA11462年龄排序
    UVA11427玩纸牌(全概率+递推)
    UVA11427玩纸牌(全概率+递推)
    UVA11389巴士司机问题
    LA3644简单并查集判环
    LA3027简单带权并查集
    LA3027简单带权并查集
  • 原文地址:https://www.cnblogs.com/z977690557/p/14277088.html
Copyright © 2011-2022 走看看