Как разорвать цикл while, когда предполагается, что break используется при определении функции? [closed]

u=input('enter your sql password ')
import mysql.connector as s
mycon=s.connect(host="localhost",user="root",passwd='{}'.format(u))
cursor=mycon.cursor()
cursor.execute('create database if not exists Reservation')
cursor.execute('use reservation')
cursor.execute("create table if not exists USER(user_id int primary key, first_name varchar(100), last_name varchar(100), aadhar_no varchar(50), gender varchar(10), age int, mobile_no varchar(50), email varchar(100), city varchar(100), state varchar(100), pincode varchar(50), password varchar(100))")
cursor.execute("create table if not exists TRAIN(train_no int primary key, train_name varchar(100), arrival_time time, departure_time time, availability_of_seats varchar(50), date date)")
cursor.execute("insert into TRAIN values(11019, 'Konark Express', '153000','154000','A','2020-04-10')")
cursor.execute("insert into TRAIN values(12025, 'Shatabdi Express','050000','055000','A','2020-04-10')")
cursor.execute("insert into TRAIN values(22881, 'Pune Express','114000','115000','A','2020-04-10')")
cursor.execute("insert into TRAIN values(10101, 'Mandovi Express','130000','133000','A','2020-04-10')")
cursor.execute("insert into TRAIN values(18520, 'LTT Express','071000','073000','A','2020-04-10')")
cursor.execute("create table if not exists STATION(station_no int, name varchar(100), hault int, arrival_time varchar(6), train_no int, primary key(station_no, train_no), constraint foreign key(train_no) references TRAIN(train_no))")
cursor.execute("insert into STATION values(1,'Kalyan',10,'140000',11019)")
cursor.execute("insert into STATION values(2,'Secunderabad',25,'142500',12025)")
cursor.execute("insert into STATION values(3,'Hyderabad',10,'210000',22881)")
cursor.execute("insert into STATION values(4,'Panvel',15,'132500',10101)")
cursor.execute("insert into STATION values(5,'Thane',10,'074000',18520)")
cursor.execute("create table if not exists STARTS(train_no int primary key , station_no int)")
cursor.execute("insert into STARTS values(11019,1)")
cursor.execute("insert into STARTS values(12025,2)")
cursor.execute("insert into STARTS values(22881,3)")
cursor.execute("insert into STARTS values(10101,4)")
cursor.execute("insert into STARTS values(18520,5)")
cursor.execute("create table if not exists REACHES(train_no int, station_no int, time time)")
cursor.execute("insert into REACHES values(11019,5,'140000')")
cursor.execute("insert into REACHES values(12025,3,'142500')")
cursor.execute("insert into REACHES values(22881,4,'210000')")
cursor.execute("insert into REACHES values(10101,2,'132500')")
cursor.execute("insert into REACHES values(18520,1,'074000')")
mycon.commit()
z=1
while True:
    import tkinter as t
    root=t.Tk()
    root.title('railway tickect booking system')
    e=t.Entry(root,width=35)
    e.grid(row=0,column=0)
    e.insert(0,'enter your user id')
    f=t.Entry(root,width=35)
    f.grid(row=1,column=0)
    f.insert(0,'enter your first name')
    g=t.Entry(root,width=35)
    g.grid(row=2,column=0)
    g.insert(0,'enter your last name')
    h=t.Entry(root,width=35)
    h.grid(row=3,column=0)
    h.insert(0,'enter your adhar card no. ')
    i=t.Entry(root,width=35)
    i.grid(row=4,column=0)
    i.insert(0,'gender')
    j=t.Entry(root,width=35)
    j.grid(row=5,column=0)
    j.insert(0,'age')
    k=t.Entry(root,width=35)
    k.grid(row=6,column=0)
    k.insert(0,'your mobile number')
    l=t.Entry(root,width=35)
    l.grid(row=7,column=0)
    l.insert(0,'email')
    m=t.Entry(root,width=35)
    m.grid(row=8,column=0)
    m.insert(0,'enter your city')
    n=t.Entry(root,width=35)
    n.grid(row=9,column=0)
    n.insert(0,'enter your state')
    o=t.Entry(root,width=35)
    o.grid(row=10,column=0)
    o.insert(0,'enter your pincode')
    p=t.Entry(root,width=35)
    p.grid(row=11,column=0)
    p.insert(0,'enter your password')
    t.Label(root,text="which train would you travel in?").grid(row=14,column=0)
    r=t.IntVar()
    t.Radiobutton(root,text="Konark Express-Kalyan to Thane",variable=r,value=11019).grid(row=15,column=0)
    t.Radiobutton(root,text="Shatabdi Express-Secunderabad to Hyderabad",variable=r,value=12025).grid(row=16,column=0)
    t.Radiobutton(root,text="Pune Express-Hyderabad to Panvel",variable=r,value=22881).grid(row=17,column=0)
    t.Radiobutton(root,text="Mandovi Express-Panvel to Secunderabad",variable=r,value=10101).grid(row=18,column=0)
    t.Radiobutton(root,text="LTT Express-Thane to Kalyan",variable=r,value=18520).grid(row=19,column=0)
    def click1():
        mycon=s.connect(host="localhost",user="root",passwd='{}'.format(u),database="reservation")
        cursor=mycon.cursor()
        cursor.execute("create table if not exists TICKET(id int primary key default {}, user_id int, train_no int)".format(z))
        cursor.execute("insert into user values({},'{}','{}','{}','{}',{},'{}','{}','{}','{}','{}','{}')".format(int(e.get()),f.get(),g.get(),h.get(),i.get(),int(j.get()),k.get(),l.get(),m.get(),n.get(),o.get(),p.get()))
        cursor.execute("insert into TICKET(user_id,train_no) values({},{})".format(int(e.get()),r.get()))
        top=t.Toplevel()
        top.title('ticket preview')
        t.Label(top,text="userid").grid(row=0,column=0)
        t.Label(top,text="ticket id").grid(row=0,column=1)
        t.Label(top,text="first name").grid(row=0,column=2)
        t.Label(top,text="surname").grid(row=0,column=3)
        t.Label(top,text="train").grid(row=0,column=4)
        t.Label(top,text="arrival time").grid(row=0,column=5)
        t.Label(top,text="{}".format(e.get())).grid(row=1,column=0)
        t.Label(top,text="{}".format(z)).grid(row=1,column=1)
        t.Label(top,text="{}".format(f.get())).grid(row=1,column=2)
        t.Label(top,text="{}".format(g.get())).grid(row=1,column=3)
        cursor.execute("select train_name from TRAIN where train_no={}".format(r.get()))
        t.Label(top,text="{}".format(cursor.fetchone())).grid(row=1,column=4)
        cursor.execute("select arrival_time from STATION where train_no={}".format(r.get()))
        t.Label(top,text="{}".format(cursor.fetchone())).grid(row=1,column=5)
        mycon.commit()
    mybutton=t.Button(root,text="submit and proceed",command=click1)
    mybutton.grid(row=20,column=0)
    top=t.Toplevel()
    t.Label(top,text="would you like to enter more records?").grid(row=2,column=0)
    x=t.IntVar()
    t.Radiobutton(top,text="yes",variable=x,value=1).grid(row=3,column=0)
    t.Radiobutton(top,text="no",variable=x,value=0).grid(row=4,column=0)
    def click2():
        if x.get()==0:
            t.Label(top,text="close the windows").grid(row=6,column=0)
            break
        elif x.get()==1:
            t.Label(top,text="close all the windows to enter new record").grid(row=6,column=0)
    t.Button(top,text="submit",command=click2).grid(row=5,column=0)
    z+=1
    root.mainloop()

Как мне действовать, чтобы, когда пользователь вводит, что он не хочет вводить больше записей, цикл разрывается? Этот код показывает ошибку, говорящую, что мой перерыв вышел из цикла.

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *