Информатика, вопрос задал anonim3324343 , 2 года назад

Почему пишет ошибку?
Домашнее задание:
Изменить программу так, чтобы вы могли вводить в однострочное текстовое поле
общее количество палочек, с которыми вы будете играть. Заменить компьютер на
второго игрока

from tkinter import*

def player():
n=int(e2.get())
k2.config(text="| "*n)
a=int(e1.get())
if (a==1 or a==2 or a==3) and n>a:
n=n-a
k2.config(text="| "*n)
k3.config(text=n)
b2.config(state="disabled")
b1.config(state="normal")
if n==1:
k3.config(text="Игрок победил!")
b1.config(state="disabled")
b2.config(state="disabled")

def player2():
n=int(e2.get())
k2.config(text="| "*n)
a=int(e1.get())
if (a==1 or a==2 or a==3) and n>a:
n=n-a
k2.config(text="| "*n)
k3.config(text=n)
b2.config(state="normal")
b1.config(state="disabled")
if n==1:
k3.config(text="Игрок 2 победил!")
b1.config(state="disabled")
b2.config(state="disabled")


w=Tk()
w.title("Игра")

k4=Label(w,text="Введите кол-во палочек",font=("arial black",17))
e2=Entry(w,font=("arial black",20),width=18)
k1=Label(w,text="Введите число от 1 до 3",font=("arial black",17))
k2=Label(w,text="| "*n,font=("arial black",20))
k3=Label(w,text=n,font=("arial black",20))

e1=Entry(w,font=("arial black",20),width=18)

b1=Button(w,text="Player 2",font=("arial black",20),width=17,bg="blue",command=player2)
b2=Button(w,text="Player",font=("arial black",20),width=17,bg="white",command=player)

k4.pack()
e2.pack()
k1.pack()
e1.pack()
k2.pack()
k3.pack()
b1.pack()
b2.pack()


anonim3324343: это сайт стирает изх
anonim3324343: но ща скинеу
anonim3324343: from tkinter import*

def player():
n=int(e2.get())
k2.config(text="| "*n)
a=int(e1.get())
if (a==1 or a==2 or a==3) and n>a:
n=n-a
k2.config(text="| "*n)
k3.config(text=n)
b2.config(state="disabled")
b1.config(state="normal")
if n==1:
k3.config(text="Игрок победил!")
b1.config(state="disabled")
b2.config(state="disabled")
anonim3324343: def player2():
n=int(e2.get())
k2.config(text="| "*n)
a=int(e1.get())
if (a==1 or a==2 or a==3) and n>a:
n=n-a
k2.config(text="| "*n)
k3.config(text=n)
b2.config(state="normal")
b1.config(state="disabled")
if n==1:
k3.config(text="Игрок 2 победил!")
b1.config(state="disabled")
b2.config(state="disabled")
anonim3324343: w=Tk()
w.title("Игра")

k4=Label(w,text="Введите кол-во палочек",font=("arial black",17))
e2=Entry(w,font=("arial black",20),width=18)
k1=Label(w,text="Введите число от 1 до 3",font=("arial black",17))
k2=Label(w,text="| "*n,font=("arial black",20))
k3=Label(w,text=n,font=("arial black",20))
anonim3324343: e1=Entry(w,font=("arial black",20),width=18)

b1=Button(w,text="Player 2",font=("arial black",20),width=17,bg="blue",command=player2)
b2=Button(w,text="Player",font=("arial black",20),width=17,bg="white",command=player)

k4.pack()
e2.pack()
k1.pack()
e1.pack()
k2.pack()
k3.pack()
b1.pack()
b2.pack()
anonim3324343: все равно обрезано ;-(
Аноним: поменяй вопрос и приложи код файлом, а не текстом
anonim3324343: но будут фотки, так как сайт не принемает .py файлы
Аноним: так переименуй в .txt

Ответы на вопрос

Ответил karpenkob73
0

Ответ:

character at index. If two are given, the range from "first" to "last" will be deleted. Use delete(0, END) to delete all text in the widget.

import tkinter as tk

def show_entry_fields():

print("First Name: %s\nLast Name: %s" % (e1.get(), e2.get()))

e1.delete(0, tk.END)

e2.delete(0, tk.END)

master = tk.Tk()

tk.Label(master, text="First Name").grid(row=0)

tk.Label(master, text="Last Name").grid(row=1)

e1 = tk.Entry(master)

e2 = tk.Entry(master)

e1.insert(10, "Miller")

e2.insert(10, "Jill")

e1.grid(row=0, column=1)

e2.grid(row=1, column=1)

tk.Button(master,

text='Quit',

command=master.quit).grid(row=3,

column=0,

sticky=tk.W,

pady=4)

tk.Button(master, text='Show', command=show_entry_fields).grid(row=3,

column=1,

sticky=tk.W,

pady=4)

master.mainloop()

tk.mainloop()

The next example shows, how we can elegantly create lots of Entry field in a more Pythonic way. We use a Python list to hold the Entry descriptions, which we include as labels into the application.

import tkinter as tk

fields = 'Last Name', 'First Name', 'Job', 'Country'

def fetch(entries):

for entry in entries:

field = entry[0]

text = entry[1].get()

print('%s: "%s"' % (field, text))

def makeform(root, fields):

entries = []

for field in fields:

row = tk.Frame(root)

lab = tk.Label(row, width=15, text=field, anchor='w')

ent = tk.Entry(row)

row.pack(side=tk.TOP, fill=tk.X, padx=5, pady=5)

lab.pack(side=tk.LEFT)

ent.pack(side=tk.RIGHT, expand=tk.YES, fill=tk.X)

entries.append((field, ent))

return entries

if __name__ == '__main__':

root = tk.Tk()

ents = makeform(root, fields)

root.bind('<Return>', (lambda event, e=ents: fetch(e)))

b1 = tk.Button(root, text='Show',

command=(lambda e=ents: fetch(e)))

b1.pack(side=tk.LEFT, padx=5, pady=5)

b2 = tk.Button(root, text='Quit', command=root.quit)

b2.pack(side=tk.LEFT, padx=5, pady=5)

root.mainloop()

If you start this Python script, it will look like this:

Name and Job: Bernd Klein, Lecturer, Germany


anonim3324343: What this? I dont know this
anonim3324343: I dont pro in the python
Аноним: просто кусок статьи с интернета, никак не связанный с заданием
Новые вопросы