python - 每次按下按钮时,如何更改 tkinter 代码以随机绘制?
问题描述
我想编写一个代码,以便每次按下按钮时都会绘制一个不同的标志。但是现在,当按随机按钮绘制国旗时,即使我再次按下它,也只会绘制那个国家的国旗。那部分是 def button27_pressed():。랜덤 表示随机。每次按下按钮时,如何更改代码以随机绘制标志?
from tkinter import *
from turtle import*
from Random import FlagPrint
import random
from 중국 import China
from 체코 import Czeh
from 태국 import Thailand
from 튀니지 import Tunisia
from 프랑스 import France
from 헝가리 import Hungary
window=Tk()
window.title("거북이를 이용한 국기 그리기")
window.geometry("540x320")
def button27_pressed():
Country=['그리스','대한민국','덴마크','독일','라트비아','룩셈부르크',
'리투아니아','말리','미국','바하마','방글라데시','벨기에',
'스위스','아이슬란드','아일랜드','영국','오스트리아','이탈리아',
'인도','일본','중국','체코','태국','튀니지','프랑스','헝가리']
Flag=random.choice(Country)
FlagPrint()
这是 FlagPrint 代码。
def FlagPrint():
if(Flag=='그리스'):
Greece()
elif(Flag=='대한민국'):
Korea()
elif(Flag=='덴마크'):
Denmark()
elif(Flag=='독일'):
Germany()
这是法国的例子。
from turtle import *
def France():
reset()
colormode(255)
speed(7)
setup(900, 900)
penup()
goto(-375, 250)
pendown()
# Blue Rectangle
color(0,85,164)
begin_fill()
forward(250)
right(90)
forward(500)
right(90)
forward(250)
end_fill()
right(180)
penup()
forward(500)
pendown()
# Red Rectangle
color(239,65,53)
begin_fill()
forward(250)
left(90)
forward(500)
left(90)
forward(250)
end_fill()
hideturtle()
解决方案
def button27_pressed():
Country=['그리스','대한민국','덴마크','독일','라트비아','룩셈부르크',
'리투아니아','말리','미국','바하마','방글라데시','벨기에',
'스위스','아이슬란드','아일랜드','영국','오스트리아','이탈리아',
'인도','일본','중국','체코','태국','튀니지','프랑스','헝가리']
Flag=random.choice(Country)
FlagPrint(Flag) # pass in flag as argument
def FlagPrint(Flag): # add Flag parameter
...
推荐阅读
- knex.js - 如何设置 Knex 查询的超时时间?
- ios - TableViewController / 自定义单元格 - 无法移动到下一个文本字段
- hibernate - 无法通过一对多关系保留子条目
- php - 如何通过重复的键值合并数组
- javascript - 防止表单域自动绘制光标/焦点
- javascript - 为什么我的 else 部分出现解析错误?
- perforce - 使 perforce 目录的内容与最新的 depot 版本完全匹配
- react-native - React Native:如何区分开发者和“样式器”的角色
- python - 如何匹配深度自动编码器的编码器解码器尺寸?
- javascript - 我怎样才能用玩笑正确地测试我的解析器?