from tkinter import *
from tkinter import ttk
from tkinter import messagebox
from tkinter import font
root=Tk() #root ise pandud
root.title("Naine vigiseb!")
pearaam = ttk.Frame(root, padding="20 20 20 20")
pearaam.grid(column=0, row=0, sticky=(N, W, E, S))
pearaam.columnconfigure(0, weight=1)
pearaam.rowconfigure(0, weight=1)
tahvel=Canvas(root)
tahvel.grid(column=4, row=0)
# - andmete sisselugemine --------
küsimused = []
vastused = []
lühivastused = []
pahanduslaused = []
#loeb sisse küsimused tekstifailist. Igast küsimusest moodustub listi element.
f = open("pahanduslaused.txt")
for e in f:
e = e.strip()
pahanduslaused.append(e)
f.close()
print(pahanduslaused)
f = open("küsimused.txt")
for e in f:
e = e.strip()
küsimused.append(e)
f.close()
print(küsimused)
#pikematest vastustest on välja võetud võtmesnad. võtmesõnade kombinatsioonid
#moodustavad hulgad. ühele küsimusele vastavad hulgad moodustavad vastuste listis elemendi
f = open('head_vastused.txt')
for e in f:
templist = []
e = e.strip().split(',')
for i in range(len(e)):
e[i] = e[i].strip()
hulk = e[i].split()
templist.append(set(hulk))
vastused.append(templist)
f.close()
print(vastused)
print(templist)
#lühivastustega sama dela, mis küsimustega
f = open('lühivastused.txt')
for e in f:
e = e.strip().split(',')
for i in range(len(e)):
e[i] = e[i].strip()
lühivastused.append(e)
f.close()
print(lühivastused)
# - -----------------------------
# - -------------
#Funktsioon, mis teeb sõnad vastuses hulgaks.
def vastus_set(vastus):
vastuse_set = set()
vastus = vastus.lower()
vastus = vastus.strip().split()
for e in vastus:
vastuse_set.add(e)
return vastuse_set
#selleks, et leida, kas on lühivastus või on tegemist pikema lausega.
def vastuse_pikkus(vastus):
järjend = []
vastus = vastus.lower()
vastus = vastus.strip().split()
pikkus = len(vastus)
return pikkus
#kasutatavad funktsioonid:
def stopProg(e): #lõpetab tegumi
messagebox.showinfo(message="Suutsid naise tuju heaks teha!")
root.destroy()
def transfertext(e): # saab tulla tekst vastusena
silt.configure(text="Aitäh!")#seesama LABEL1 või silt
def tuju(e): # vastab kordusega
silt.configure(text="Mis " + sisestus.get()+"?")
def vastamine(e): #vastus vastavalt kirjutatule
ee = sona.get()
ee = ee.lower()
if ee == '':
label1.configure(text='Mida sa vaikid nüüd, ma küsisisn sult midagi!')
button2.configure(bg="red", text="Räägi minuga!")
elif vastuse_pikkus(ee) < 2:
label1.configure(text="Kirjuta pikemalt")
button2.configure(bg="green", text="Vasta!")
## if lühivastuseid_järjest == 1:
## print('Tead, kui sa ainult lühivastuseid annad, siis me ei pea üldse rääkima.')
## print('Ma kordan ennast.')
## lühivastuseid_järjest += 1
## pass
## elif lühivastuseid_järjest == 2:
## print('Järelikult sa ei taha minuga enam rääkida.')
## break
## elif vastus in lühivastused[vastuse_järg]:
## lühivastuseid_järjest += 1
## if lühivastused[vastuse_järg].index(vastus) < 10:
## küsimuse_järg += 1
## else:
## küsimuse_järg += 2
## küsimus = False
## pass
elif vastuse_pikkus(ee) == 2:
global vastuse_pikkus
vastus_setina = vastus_set(ee)
if vastus_setina in vastused[0]:
label1.configure(text="Minust räägid vä? Mis ma olen?")
button2.configure(bg="#FFC078", text="Ütle mulle!")
elif vastus_setina not in vastused[0]:
from random import randint
suva = randint(0, len(pahanduslaused)-1)
label1.configure(text=pahanduslaused[suva])
elif vastuse_pikkus(ee) > 2:
global vastuse_pikkus
vastus_setina = vastus_set(ee)
if "sa" or "sina" in vastus_setina:
vastuse_pikkus = len(vastus_setina)
for e in vastused[0]:
a = len(e)
b = len(vastus_setina)
c = vastus_setina - e
if len(c) == b - a:
label1.configure(text="""Aitäh! Ma tahtsingi
sellist komplimenti kuulda!""")
button2.configure(bg="gold", text="Enam ei pea midagi ütlema")
button2.bind('<Button-1>', stopProg)
else:
label1.configure(text="Mida?!?!?!")
## elif "sa" or "sina" not in vastus_setina:
## vastuse_pikkus = len(vastus_setina)
## for e in vastused[0]:
## a = len(e)
## b = len(vastus_setina)
## c = vastus_setina - e
## if len(c) == b - a:
## label1.configure(text="Kes siis???")
## button2.configure(bg="red", text="Mida?")
else:
from random import randint
suva = randint(0, len(pahanduslaused)-1)
label1.configure(text=pahanduslaused[suva])
##
##
## eeset = set()
## for element in ee:
## eeset.add(element)
## if eeset in vastused[0]:
## silt.configure(text="Mina vä?")
## elif eeset in lühivastused[0]:
## label1.configure(text="Misasja siis? Vasta mu küsimusele!!!")
##
## else:
## label1.configure(text="tere")
##
## if ee == "sa oled jumalik" or ee == "sa oled kaunitar":
## label1.configure(text="Aitäh, selle ilusa komplimendi eest!!!")
## button2.configure(bg="gold", text="Enam ei pea midagi ütlema")
## button2.bind('<Button-1>',stopProg)
## button1.configure(text="Sa rahuldasid ta!", bg="green")
## button1.bind('<Button-1>',stopProg)
## tahvel.create_image(250, 130, image=pilt1)
## elif ee == "jaa":
## #koht.set(ee + " uus asi") #uude kohta tekkiv
## label1.configure(text="Mis mõttes mis jaaaaa? ")
## button1.configure(text="Ilmus uus ja sule mäng kastiga", bg="gold")
## button1.bind('<Button-1>', lõpeta)
## button2.configure(bg="red")
## elif ee == "oled ilus" or ee == "ilus":
## label1.configure(text="Kui ilus ja kes??? ")
## elif ee=="oled ilus jaa":
## label1.configure(text="""Kas sa nagu täislausega ei oska mulle
##öelda kui väga ilus ma olen väää?! """)
## elif ee == "sa oled kole":
## stopProg(e)
## else:
## label1.configure(text="""Räägi selgete sõnadega ja täislausega!
##Milline ma siis välja näen su meelest?!?!""")
def lõpeta(e):#kui inimene ajas naise täiesti närvi
messagebox.showinfo(message="Sa ei suuda mu tuju parandada! Asi on läbi!")
stopProg(e)
pilt = PhotoImage(file="tumblr_mr4ca3Dn6P1rpqa4xo1_500.gif")
pilt1 = PhotoImage(file="happy-woman-gifs.gif")
tahvel.create_image(200, 200, image=pilt)
appHighlightFont = font.Font(family='Helvetica', size=12, weight='bold')
silt = ttk.Label(pearaam, text="Kas ma olen ilus?")
silt.grid(column=1, row=1, rowspan=1, columnspan=1, sticky=(N, W, E, S))
sona = StringVar()
koht = StringVar() #VARIAABLID
sisestus = ttk.Entry(pearaam, width=40, textvariable=sona)#VASTUS
sisestus.grid(column=2, row=1)
ttk.Label(pearaam, textvariable=koht).grid(column=1, row=5) #SEE ILMUB fniga
button1=Button(pearaam,text="Kast läheb kinni", bg="green") #see võiks tulla kui mäng on läbi
button1.grid(column=2, row=5, sticky=(N, W)) #keskel sticky N W
button1.bind('<Button-1>',stopProg)#kinniminemisefn
button2=Button(pearaam,text="Vasta mulle!", bg="pink", cursor="heart")
button2.grid(column=2, row=3)
button2.bind('<Button-1>',vastamine)
##button3=Button(pearaam,text="Vastan sulle!", bg="blue", activebackground="black")
##button3.grid(column=2, row=3)
##button3.bind('<Button-1>',vastamine) #fn
##
##nupp3=Button(pearaam, text="Kordan sind", bg="brown")
##nupp3.grid(column=2, row=4)
##nupp3.bind('<Button-1>', tuju)
##
##nupp4=Button(pearaam, text="Mängu kaotus", bg="red") #katsetus
##nupp4.grid(column=2, row=6)
##nupp4.bind('<Button-1>', lõpeta)
##
##button4=Button(pearaam, activebackground="black", bitmap="questhead")
##button4.grid(column=4, row=3)
##button4.bind('<Button-1>',vastamine)
label1=Label(pearaam,text="Vasta siis kenasti!", font=appHighlightFont) #ilmub kiri
label1.grid(column=1, row=3)
for child in pearaam.winfo_children(): child.grid_configure(padx=10, pady=10) #paigutuse element
root.mainloop()
Kommentaare ei ole:
Postita kommentaar