python课程作业——第10章 文件和异常

第10章 文件和异常

这里写图片描述

# 10-11
# number_writer.py
import json

num_str = input("Please input your favourite number: ")
num = int(num_str)
with open('num.json', 'w') as fout:
    json.dump(num, fout)

# number_reader.py
import json

with open('num.json', 'r') as fin:
    num = json.load(fin)
print("I know your favourite number! It's " + str(num) + ".")

# 10-12
import json

fname = 'num.json'

try:
    with open(fname) as fout:
        num = json.load(fout)
except FileNotFoundError:
    num_str = input("Please input your favourite number: ")
    num = int(num_str)
    with open(fname, 'w') as fin:
        json.dump(num, fin)
else:
    print("I know your favourite number! It's " + str(num) + ".")


# 10-13
import json


def get_stored_username():
    """如果存储了用户名,就获取它"""
    filename = 'username.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? ")
    return username.title()


def store_new_username(username):
    """把用户名存入json"""
    filename = 'username.json'
    with open(filename, 'w') as f_obj:
        json.dump(username, f_obj)


def greet_user():
    """问候用户,并指出其名字"""
    stored_username = get_stored_username()
    new_username = get_new_username()

    if stored_username:
        if stored_username == new_username:
            print("Welcome back, " + stored_username + "!")
        else:
            print("Change user " + stored_username + " to user " +
                  new_username)
            store_new_username(new_username)
    else:
        print("We'll remember you when you come back, " + new_username + "!")
        store_new_username(new_username)


greet_user()

猜你喜欢

转载自blog.csdn.net/yeziqing10/article/details/80629579