игра брюс 2048
Главная / Программирование / Язык программирования Python / Тест 12

Язык программирования Python - тест 12

Упражнение 1:
Номер 1
Какой класс Tkinter соответствует виджету для поля ввода?

Ответ:

 (1) Label 

 (2) Text 

 (3) Frame 

 (4) Entry 


Номер 2
Какой класс Tkinter соответствует виджету для надписи?

Ответ:

 (1) Label 

 (2) Text 

 (3) Frame 

 (4) Entry 


Номер 3
Какой класс Tkinter соответствует виджету для вывода графических примитивов?

Ответ:

 (1) Label 

 (2) Text 

 (3) Frame 

 (4) Canvas 


Номер 4
Какой класс Tkinter соответствует кнопке для представления одного из альтернативных значений?

Ответ:

 (1) Button  

 (2) Checkbutton  

 (3) Menubutton  

 (4) Radiobutton  


Номер 5
Какой класс Tkinter соответствует кнопке для представления многострочного текста (без возможности редактирования)?

Ответ:

 (1) Message 

 (2) Label 

 (3) Listbox 


Упражнение 2:
Номер 1
Какой шаблон можно использовать для события, при котором клавиша F5 нажимается при нажатой клавише Shift?

Ответ:

 (1) <ButtonPress-Shift-F5> 

 (2) <Shift-F5> 

 (3) <Shift_L-F5> и <Shift_R-F5> 

 (4) <F15> 


Номер 2
Какой шаблон можно использовать для события, при котором клавиша F5 нажимается при нажатой правой кнопке мыши?

Ответ:

 (1) <ButtonPress-F5> 

 (2) <B-F5> 

 (3) <B3-F5> 

 (4) <Button3-F5> 


Номер 3
Какой шаблон события можно использовать для перехвата нажатия клавиши пробел?

Ответ:

 (1) < > 

 (2) <space> 

 (3) <KeyPress-space> 

 (4) <ButtonPress-space> 


Номер 4
Какой шаблон можно использовать для события двойного щелчка левой кнопки мыши?

Ответ:

 (1) <B1-B1> 

 (2) <Double-Button-1> 

 (3) <Double-B1> 

 (4) <Double-1> 


Номер 5
Какой шаблон можно использовать для события — тройного щелчка правой кнопкой мыши?

Ответ:

 (1) <B-3> 

 (2) <Triple-B1> 

 (3) <Triple-B2> 

 (4) <Triple-B3> 


Упражнение 3:
Номер 1
Какой код порождает следующее расположение кнопок? files

Ответ:

 (1) b1.pack(side=BOTTOM); b2.pack(side=BOTTOM) 

 (2) b1.pack(side=TOP); b2.pack(side=BOTTOM) 

 (3) b2.pack(side=BOTTOM); b1.pack(side=BOTTOM) 

 (4) b1.pack(side=BOTTOM); b2.pack(side=TOP) 


Номер 2
 Какой код порождает следующее расположение кнопок? files

Ответ:

 (1) b1.pack(side=BOTTOM); b2.pack(side=BOTTOM) 

 (2) b1.pack(side=TOP); b2.pack(side=BOTTOM) 

 (3) b2.pack(side=BOTTOM); b1.pack(side=BOTTOM) 

 (4) b1.pack(side=BOTTOM); b2.pack(side=TOP) 


Номер 3
Какой код порождает следующее расположение кнопок? files
 # 1
b1.grid(row=0, column=0, rowspan=2)
b2.grid(row=0, column=1)
b3.grid(row=1, column=1)

# 2
b1.grid(row=0, column=0, columnspan=2)
b2.grid(row=1, column=0)
b3.grid(row=1, column=1)

# 3
b1.grid(row=1, column=1, rowspan=2)
b2.grid(row=1, column=0)
b3.grid(row=0, column=0)

# 4    
b1.grid(row=1, column=1, columnspan=2)
b2.grid(row=0, column=1)
b3.grid(row=0, column=0)

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 4
Какой код порождает следующее расположение кнопок? files
  # 1
b1.grid(row=0, column=0, rowspan=2)
b2.grid(row=0, column=1)
b3.grid(row=1, column=1)

# 2
b1.grid(row=0, column=0, columnspan=2)
b2.grid(row=1, column=0)
b3.grid(row=1, column=1)

# 3
b1.grid(row=1, column=1, rowspan=2)
b2.grid(row=1, column=0)
b3.grid(row=0, column=0)

# 4    
b1.grid(row=1, column=1, columnspan=2)
b2.grid(row=0, column=1)
b3.grid(row=0, column=0)
 

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 5
Какой код порождает следующее расположение кнопок?  files
 # 1
b1.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=SE)
b2.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=NE)
b3.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=SW)
b4.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=NW)

# 2
b1.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=SE)
b2.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=NE)
b3.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=SW)
b4.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=NW)

# 3
b1.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=NW)
b2.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=SW)
b3.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=NE)
b4.place(relx=0.2, rely=0.2, relwidth=0.4, relheight=0.4, anchor=SE)

# 4
b1.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=NW)
b2.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=SW)
b3.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=NE)
b4.place(relx=0.5, rely=0.5, relwidth=0.4, relheight=0.4, anchor=SE)

Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 4:
Номер 1
Следующая программа производит замену одной подстроки на другую в тексте слева, записывая текст в виджете справа. Какие ошибки в ней допущены?
from Tkinter import *
from ScrolledText import ScrolledText

def transl():
  txt = t1.get("1.0", END).replace(e1.get(), e2.get())
  t2.delete("1.0", END)
  t2.insert(END, txt)

tk = Tk()
f = Frame(tk)
e1 = Entry(f, background="White", width=32)
e1.pack(side=LEFT)
b = Button(f, text=">>", command=transl)
b.pack(side=LEFT)
e2 = Entry(f, background="White", width=32)
e2.pack(side=LEFT)
f.grid(row=0, column=0, columnspan=2)
t1 = ScrolledText(tk, background="White", width=40)
t1.grid(row=1, column=0)
t2 = ScrolledText(tk, background="White", width=40)
t2.grid(row=1, column=1)
tk.mainloop()

Ответ:

 (1) функция transl() должна иметь аргумент 

 (2) виджет f должен занимать три ячейки, а не две (в нем кнопка и две полоски ввода) 

 (3) e1.get() и e2.get() должны быть e1.get("1.0", END) и e2.get("1.0", END) соответственно 

 (4) ошибок нет 


Номер 2
Следующая программа производит замену одной подстроки на другую в тексте слева, записывая текст в виджете справа. Какие ошибки в ней допущены?
from Tkinter import *
from ScrolledText import ScrolledText

def transl():
  txt = t1.get("1.0", END).replace(e1.get(), e2.get())
  t2.delete("1.0", END)
  t2.insert(END, txt)

tk = Tk()
f = Frame(tk)
e1 = Entry(f, background="White", width=32)
e1.pack(side=LEFT)
b = Button(f, text=">>", command=transl)
b.pack(side=LEFT)
e2 = Entry(f, background="White", width=32)
e2.pack(side=LEFT)
f.grid(row=0, column=0, columnspan=2)
t1 = ScrolledText(tk, background="White", width=40)
t1.grid(row=1, column=0)
t2 = ScrolledText(tk, background="White", width=40)
t2.grid(row=1, column=1)

Ответ:

 (1) функция transl() должна иметь аргумент 

 (2) нет главного цикла обработки событий 

 (3) e1.get() и e2.get() должны быть e1.get("1.0", END) и e2.get("1.0", END) соответственно 

 (4) ошибок нет 


Номер 3
Следующая программа производит замену одной подстроки на другую в тексте слева, записывая текст в виджете справа. Какие ошибки в ней допущены?
from Tkinter import *
from ScrolledText import ScrolledText

def transl():
  txt = t1.get("1.0", END).replace(e1.get(), e2.get())
  t2.delete()
  t2.insert(END, txt)

tk = Tk()
f = Frame(tk)
e1 = Entry(f, background="White", width=32)
e1.pack(side=LEFT)
b = Button(f, text=">>", command=transl)
b.pack(side=LEFT)
e2 = Entry(f, background="White", width=32)
e2.pack(side=LEFT)
f.grid(row=0, column=0, columnspan=2)
t1 = ScrolledText(tk, background="White", width=40)
t1.grid(row=1, column=0)
t2 = ScrolledText(tk, background="White", width=40)
t2.grid(row=1, column=1)
tk.mainloop()

Ответ:

 (1) функция transl() должна иметь аргумент 

 (2) виджет f должен занимать три ячейки, а не две (в нем кнопка и две полоски ввода) 

 (3) метод delete текста не содержит позиций удаляемого текста 

 (4) ошибок нет 


Номер 4
Следующая программа производит замену одной подстроки на другую в тексте слева, записывая текст в виджете справа. Какие ошибки в ней допущены?
from Tkinter import *
from ScrolledText import ScrolledText

def transl():
  txt = t1.get("1.0", END).replace(e1.get(), e2.get())
  t2.delete("1.0", END)
  t2.insert(END, txt)

tk = Tk()
f = Frame(tk)
e1 = Entry(f, background="White", width=32)
b = Button(f, text=">>", command=transl)
e2 = Entry(f, background="White", width=32)
f.grid(row=0, column=0, columnspan=2)
t1 = ScrolledText(tk, background="White", width=40)
t1.grid(row=1, column=0)
t2 = ScrolledText(tk, background="White", width=40)
t2.grid(row=1, column=1)
tk.mainloop()

Ответ:

 (1) функция transl() должна иметь аргумент 

 (2) некоторые виджеты не появятся в окне, так как не применены менеджеры расположения 

 (3) e1.get() и e2.get() должны быть e1.get("1.0", END) и e2.get("1.0", END) соответственно 


Номер 5
Следующая программа производит замену одной подстроки на другую в тексте слева, записывая текст в виджете справа. Какие ошибки в ней допущены?
from Tkinter import *
from ScrolledText import ScrolledText

def transl():
  txt = t1.get("1.0", END).replace(e1.get(), e2.get())
  t2.delete("1.0", END)
  t2.insert(END, txt)

tk = Tk()
f = Frame(tk)
e1 = Entry(f, background="White", width=32)
e1.pack(side=LEFT)
b = Button(f, text=">>", command=transl)
b.pack(side=LEFT)
e2 = Entry(f, background="White", width=32)
e2.pack(side=LEFT)
f.grid(row=0, column=0, columnspan=2)
t1 = ScrolledText(tk, background="White", width=40)
t1.grid(row=1, column=0)
t2 = ScrolledText(tk, background="White", width=40)
t2.grid(row=1, column=1)
tk.mainloop()

Ответ:

 (1) нажатие кнопки не привязано к событию с помощью метода bind() 

 (2) применены разные менеджеры расположения 

 (3) вместо columnspan нужен rowspan 

 (4) ошибок нет 




Главная / Программирование / Язык программирования Python / Тест 12