import sqlite3
from random import randint
import sys
from time import time
verbose = False
# verbose = False
conn = sqlite3.connect("computer_cards.db")
def log(msg):
if verbose:
print("LOG:", msg)
def read_all_cards():
sql = "SELECT * FROM computer"
log("SQL:>>>>>" + sql + "<<<<<")
result = conn.execute(sql)
return result.fetchall()
def insert_picked(name):
sql = "INSERT INTO picked(name, time) VALUES ('{}', {})".format(name, time())
log("SQL:>>>>>" + sql + "<<<<<")
conn.execute(sql)
conn.commit()
def read_last_picked():
sql = "SELECT * FROM picked ORDER BY time DESC"
log("SQL:>>>>>" + sql + "<<<<<")
result = conn.execute(sql)
return result.fetchone()
def pick_card():
last_picked_card = read_last_picked()
log("last_picked_card:")
log(last_picked_card)
random_card = cards[randint(0, len(cards) - 1)]
if last_picked_card is not None:
while random_card[0] == last_picked_card[0]:
random_card = cards[randint(0, len(cards) - 1)]
insert_picked(random_card[0])
return random_card
while True:
player = input("Are you player (1) or (2) >")
if player == "q":
sys.exit(0)
if player in ["1", "2"]:
break
cards = read_all_cards()
choosing_player = "1"
for r in range(5):
input("Press enter to pick a card when both players are ready >")
card = pick_card()
print("picked card:")
print("{:10}: {}".format("name", card[0]))
print("{:10}: {}".format("cores", card[1]))
print("{:10}: {}".format("cpu_speed", card[2]))
print("{:10}: {}".format("ram", card[3]))
print("{:10}: {}".format("cost", card[4]))
print("Player " + choosing_player + " picks.")
winner = input("Did you win? (Y)es, (N)o, (D)raw >").lower()
if winner == "y":
choosing_player = player
elif winner == "n":
choosing_player = "2" if player == "1" else "1"
conn.close()
Comments