Completed 10-13 User Dictionary
This commit is contained in:
parent
37bbfa1d0b
commit
cca2d5153d
45
Chapter_10/10-13_user_dictionary.py
Normal file
45
Chapter_10/10-13_user_dictionary.py
Normal file
@ -0,0 +1,45 @@
|
||||
# Exercise 10-13 User Dictioinary
|
||||
# Learning Objective: Save/Load json using json dumps/loads.
|
||||
|
||||
from pathlib import Path
|
||||
import json
|
||||
|
||||
def get_stored_info(path):
|
||||
"""Get stored username if available."""
|
||||
if path.exists():
|
||||
contents = path.read_text()
|
||||
information = json.loads(contents)
|
||||
return information
|
||||
else:
|
||||
pass
|
||||
|
||||
def get_information(path):
|
||||
"""Prompt for information."""
|
||||
data = {
|
||||
|
||||
}
|
||||
username = input("What is your name? ")
|
||||
location = input("What country/state are you in? ")
|
||||
age = input("How old are you? ")
|
||||
data["username"] = username
|
||||
data["location"] = location
|
||||
data["age"] = age
|
||||
save_data = json.dumps(data)
|
||||
path.write_text(save_data)
|
||||
return data
|
||||
|
||||
|
||||
def greet_user():
|
||||
"""Greet the user by name."""
|
||||
path = Path('user_info.json')
|
||||
information = get_stored_info(path)
|
||||
if information:
|
||||
print(f"Welcome back, {information["username"]}! We remember that you are from {information["location"]} and that you are {information["age"]} years old since the last time you ran this.")
|
||||
else:
|
||||
entered_data = get_information(path)
|
||||
print(f"We'll remember this information for when you come back, \n")
|
||||
for i in entered_data:
|
||||
print(f"{entered_data[i]}")
|
||||
|
||||
greet_user()
|
||||
|
||||
1
user_info.json
Normal file
1
user_info.json
Normal file
@ -0,0 +1 @@
|
||||
{"username": "Steve", "location": "CZ", "age": "32"}
|
||||
Loading…
x
Reference in New Issue
Block a user