• Python中如何将数据存储为json格式的文件(续)


    将上一篇中的例子,修改一下,将两个程序合二为一,如果存储了用户喜欢的水果就显示它,否则提示用户输入他喜欢的水果并将其存储到文件中。

    favorite.py

     1 import json
     2 
     3 filename = "favorite_fruit.json"
     4 
     5 def greet_user():
     6     """问候用户,并指出他喜欢的水果"""
     7     fruit = get_saved_fruit()
     8     if fruit:
     9         print("I know your favorite fruit !  It's " + fruit)
    10     else:
    11         fruit = save_user_new_fruit()
    12         print("I know your favorite fruit !  It's " + fruit)
    13 
    14 
    15     
    16 
    17 def save_user_new_fruit():
    18     """提示用户输入喜欢的水果"""
    19     fruit = input(" What is your favorite fruit ? ")
    20     with open(filename,'w') as  file_obj:
    21         json.dump(file_obj,fruit)
    22     return fruit
    23 
    24 def get_saved_fruit():
    25     """如果存储了用户喜欢的水果,就获取它"""
    26     try :
    27         with open(filename) as  file_obj:
    28             fruit = json.load(file_obj)
    29     except FileNotFoundError:
    30         return None
    31     else:
    32         return fruit
    33         
    34 greet_user()

    解释:在优化代码过后,每个函数只需要执行单一任务,这更符合程序的设计

    第一次运行程序后的控制台如下:

    如果我们是第一次运行,如下图

    会让用户先输入最喜欢的水果然后回应用户他最喜欢的水果。

    而之后的运行,则如图:

    因为程序在第一次运行之后已经将用户喜欢的水果存入了json文件。

    所以不会提示用户输入。

  • 相关阅读:
    poj 1286 Necklace of Beads poj 2409 Let it Bead HDU 3923 Invoker <组合数学>
    大圣降妖录破解
    dex文件格式二
    dex文件格式一
    打造smali代码库辅助分析
    一键调试脚本使用手册
    TraceView进行性能分析
    Android Killer工具用法
    十三. JEB破解三
    十二. 一步步破解JEB 2.0demo版二
  • 原文地址:https://www.cnblogs.com/tizer/p/11070173.html
Copyright © 2020-2023  润新知