91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python用json模塊存儲數據的方法

發布時間:2020-08-06 11:27:55 來源:億速云 閱讀:160 作者:小新 欄目:編程語言

這篇文章主要介紹Python用json模塊存儲數據的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

存儲數據

很多程序都要求用戶輸入某種信息,程序把用戶提供的信息存儲在列表和字典等數據結構中。用戶關閉程序時,就要保存提供的信息,一種簡單的方式就是使用模塊json來存儲數據。

模塊json能將簡單的python數據結構存儲到文件中,并在程序再次運轉時加載該文件中的數據。還可以使用json在python程序之間分享數據,與使用其他編程語言的人分享。

1. 使用json.dump( )和json.load( )

import json
numbers = [2, 3, 5, 7, 11, 13]
filename = 'number.json'
with open(filename, 'w') as f_ojb:  # 以寫入模式打開文件
    json.dump(numbers, f_ojb)  # 使用函數json.dump()將列表存儲到文件中
with open(filename) as f_ojb:
    nums = json.load(f_ojb)  # 使用函數json.load()將這個列表讀取到內存中
print(nums)  # 打印讀取到內存中的列表,比較是否與存入的列表相同

 運行結果:

[2, 3, 5, 7, 11, 13]

2. 保存和讀取用戶生成的數據

import json
# 存儲用戶的名字
username = input('What is your name? ')
filename = 'username.json'
with open(filename, 'w') as f_obj:
    json.dump(username, f_obj)  # 存儲用戶名與username.json文件中
    print("We'll remember you when you come back, " + username + "!")
# 向名字被存儲的用戶發出問候
with open(filename) as f_obj:
    un = json.load(f_obj)
    print("\nWelcome back, " + un + "!")

運行結果:

What is your name? ela
We'll remember you when you come back, ela!
Welcome back, ela!

優化上述代碼:

import json
# 存儲用戶的名字
username = input('What is your name? ')
filename = 'username.json'
with open(filename, 'w') as f_obj:
    json.dump(username, f_obj)  # 存儲用戶名與username.json文件中
    print("We'll remember you when you come back, " + username + "!")
# 向名字被存儲的用戶發出問候
with open(filename) as f_obj:
    un = json.load(f_obj)
    print("\nWelcome back, " + un + "!")

運行結果:

What is your name? ela
We'll remember you when you come back, ela!
Welcome back, ela!

優化上述代碼:

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("\nWelcome back, " + username + "!")

運行結果:

Welcome back, ela!

3. 重構

代碼可以運行,但也可以做進一步改進——將代碼劃分成一些列完成具體工作的函數:這個過程稱為重構。

目的:讓代碼更清晰、易于理解、易擴展。

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? ')
    filename = "username.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'll remember you when you come back, " + username + "!")
greet_user()

以上是Python用json模塊存儲數據的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孝昌县| 长阳| 武夷山市| 邯郸县| 新津县| 恩施市| 海宁市| 弥渡县| 康平县| 都匀市| 汉中市| 英德市| 岑溪市| 金门县| 阿巴嘎旗| 昌吉市| 德格县| 新野县| 庆安县| 新源县| 玉山县| 定日县| 古田县| 自治县| 商河县| 图木舒克市| 乌鲁木齐县| 灵宝市| 新和县| 陵川县| 深圳市| 南江县| 肃北| 南丹县| 上蔡县| 汝阳县| 丹寨县| 福鼎市| 农安县| 琼结县| 弋阳县|