1. 程式人生 > 其它 >10-11 喜歡的數字

10-11 喜歡的數字

1. 專案

編寫一個程式,提示使用者輸入他喜歡的數字,並使用json.dump()將這個數字儲存到檔案中。再編寫一個程式,從檔案中讀取這個值,並打印訊息“I know your favorite number! It’s _____.”。

2. 程式碼

import json

def get_favorite_number():
    """如果儲存了喜歡的數字,就獲取它"""
    filename = 'favorite_number.json'
    try:
        with open(filename) as f_obj:
            favorite_number = json.load(f_obj)
    except FileNotFoundError:
        return None
    else:
        return favorite_number

def get_new_number():
    """提示使用者輸入喜歡的數字"""
    favorite_number = input("What's your favorite number? ")
    filename = 'favorite_number.json'
    with open(filename, 'w') as f_obj:
        json.dump(favorite_number, f_obj)
    return favorite_number


def read_number():
    """讀取喜歡的數字,並列印一段話"""
    favorite_number = get_favorite_number()
    if favorite_number:
        print("I know your favorite number! It's " + favorite_number + " .")
    else:
        favorite_number = get_new_number()
        print("I know your favorite number! It's " + favorite_number + " .")

read_number()

  

3. 執行結果

沒有favorite_number.json檔案就建立一個。如果有就直接列印結果。