Напишите, пожалуйста, код на Питон, который откроет новое окно с помощью библиотеки tkinter, добавить туда холст (canvas) и кнопку рисовать ниже холста. При нажатии на кнопку должна вызываться функция, которая будет рисовать рандомно один из 10 элементов виселицы(как в игре, в которой нужно угадать слово). Заранее благодарен.
Answers & Comments
Ответ:
import tkinter as tk
import random
hangman_parts = ['head', 'body', 'left arm', 'right arm', 'left leg', 'right leg', 'left foot', 'right foot', 'left hand', 'right hand']
def draw_hangman(canvas):
canvas.delete("all")
part = random.choice(hangman_parts)
if part == 'head':
canvas.create_oval(50, 50, 100, 100)
elif part == 'body':
canvas.create_line(75, 100, 75, 200)
elif part == 'left arm':
canvas.create_line(75, 125, 50, 150)
elif part == 'right arm':
canvas.create_line(75, 125, 100, 150)
elif part == 'left leg':
canvas.create_line(75, 200, 50, 225)
elif part == 'right leg':
canvas.create_line(75, 200, 100, 225)
elif part == 'left foot':
canvas.create_rectangle(45, 225, 55, 235)
elif part == 'right foot':
canvas.create_rectangle(95, 225, 105, 235)
elif part == 'left hand':
canvas.create_oval(45, 125, 55, 135)
elif part == 'right hand':
canvas.create_oval(95, 125, 105, 135)
root = tk.Tk()
canvas = tk.Canvas(root, width=200, height=300)
canvas.pack()
button = tk.Button(root, text='Рисовать', command=lambda: draw_hangman(canvas))
button.pack()
root.mainloop()