Test/Python(20220101~)
Days14_숫자 업다운 게임 프로젝트 (리스트/딕셔너리 중첩 호출)
kiostory
2022. 1. 22. 20:48
# data 구조
data = [
{
'name': 'Instagram',
'follower_count': 346,
'description': 'Social media platform',
'country': 'United States'
},
{
'name': 'Cristiano Ronaldo',
'follower_count': 215,
'description': 'Footballer',
'country': 'Portugal'
},
...
# 중첩 데이터의 key를 호출했으면
a=random.choice(data)
b=random.choice(data)
# 각 values는
a["name"]
a["follower_count"]
a["description"]
#형태로 호출할 수 있고
data[a]["name"]
#형태로도 호출할 수 있음
----------------------------------------------------------------------------
from art import logo, vs
from game_data import data
import random
import os
correct = False
user_score=0
a=0
def clean():
if os.name in ('nt', 'dos'): # If Machine is running on Windows, use cls
os.system('cls')
else:
os.system('clear')
clean()
print(logo)
def go_on(data, correct, a, user_score):
if correct == False:
a=random.choice(data)
b=random.choice(data)
if a == b :
b=random.choice(data)
else:
b=random.choice(data)
if a == b :
b=random.choice(data)
# print(f"a_count= {data[a]['follower_count']} , b_count= {data[b]['follower_count']}") #just for check
print(f"a_count= {a['follower_count']} , b_count= {b['follower_count']}")
# print(f"Compare A: {data[a]['name']}, a {data[a]['description']}, from {data[a]['country']}. ")
print(f"Compare A: {a['name']}, a {a['description']}, from {a['country']}. ")
print(vs)
# print(f"Compare B: {data[b]['name']}, a {data[b]['description']}, from {data[b]['country']}. ")
print(f"Compare B: {b['name']}, a {b['description']}, from {b['country']}. ")
# if data[a]['follower_count'] >= data[b]['follower_count']:
if a['follower_count'] >= b['follower_count']:
correct_answer = "a"
else :
correct_answer = "b"
print(f"correct answer = {correct_answer}") #just for check
user_answer = input("Who has more followers? Type 'A' or 'B': ").lower()
a=b
if correct_answer == user_answer:
correct = True
user_score+=1
clean()
print(logo)
print(f"You're right: Current score: {user_score}")
go_on(data, correct, a, user_score)
else:
clean()
print(logo)
print(f"Sorry, that's wrong. Final score: {user_score}")
go_on(data, correct, a, user_score)