Python画国旗

前言

今天,我们来用turtle库来绘制国旗

一、美国国旗

国旗的形状是长方形;国旗的长宽之比为19:10,美国国旗由红、白、蓝三色组成;画面格局由两部分组成,旗的左上方蓝底上排列着50颗白色的星,6颗一排与5颗一排相间排列,共排9行;旗的其余部分是13道红白相间的条子,有7道红色横条以及6道白色横条 。

python 复制代码
import  turtle    
t = turtle.Pen()
b = turtle.Pen()   
t.speed(800)      
def ct(c):    
    t.color(c)     
    t.begin_fill()
    for i in range(2):
        t.forward(247)  
        t.right(90)
        t.forward(10)
        t.right(90)
    t.end_fill()
for i in range(14):  
    if i%2==1:   
        c ='white'
    else:
        c ='red'
    ct(c)
    t.right(90)
    t.forward(10)
    t.left(90)
t.up()     
t.home()
t.down()
for j in range(4):   
    t.color('blue')    
    t.begin_fill()
    t.forward(120)
    t.right(90)
    t.forward(70)
    t.right(90)
    t.end_fill()
def wjx():       
    b.color('white')
    b.begin_fill()
    for g in range(5):
        b.forward(6)
        b.left(144)
    b.end_fill()
def wjx6():     
    for l in range(6):
        b.up()
        b.forward(3)
        b.down()
        wjx()
        b.up()
        b.forward(18)
        b.down()
def wjx5():     
    for l in range(5):
        b.up()
        b.forward(10)
        b.down()
        wjx()
        b.up()
        b.forward(13)
        b.down()
b.right(90)    
b.forward(7)      
b.left(90)
for u in range(9):      
    if u%2 == 0:        
        wjx6()
    else:
        wjx5()     
    b.up()     
    b.home()
    b.right(90)
    b.forward((u+2)*7)
    b.left(90)
    b.down()
turtle.done()   

二、奥兰群岛旗

奥兰群岛又称阿赫韦南马群岛(Ahvenanmaa),是芬兰唯一的一个自治省,位于芬兰的西南沿海,由6500个小岛组成,岛上居民2.5万人,大多以瑞典语为母语。奥兰群岛的首府是玛丽港(Mairenhamn)。

python 复制代码
import turtle
 
width = 900
height = 600
 
turtle.screensize(width,height,"#0053a5")
turtle.setup(width,height)
t = turtle.Turtle()
t.speed(10)
 
t.pencolor("#ffce00")
t.fillcolor("#ffce00")
t.hideturtle()
 
t.penup()
t.goto(0,-170/3)
t.pendown()
t.begin_fill()
t.forward(width / 2)
t.left(90)
t.forward(170)
t.left(90)
t.forward(width)
t.left(90)
t.forward(170)
t.end_fill()
 
t.penup()
t.goto(0,height/2)
t.pendown()
t.begin_fill()
t.forward(height)
t.right(90)
t.forward(170)
t.right(90)
t.forward(height)
t.end_fill()
 
t.pencolor("#d21034")
t.fillcolor("#d21034")
 
t.penup()
t.goto(-170 / 3,height/2)
t.pendown()
t.begin_fill()
t.left(90)
t.forward(170/3)
t.left(90)
t.forward(height)
t.left(90)
t.forward(170/3)
t.end_fill()
 
t.penup()
t.goto(-width/2,0)
t.pendown()
t.begin_fill()
t.forward(width)
t.left(90)
t.forward(170/3)
t.left(90)
t.forward(width)
t.left(90)
t.end_fill()
 
turtle.mainloop()
相关推荐
csgo打的菜又爱玩1 分钟前
7.DispatcherResourceManagerComponentFactory解析.md
开发语言·python·flink
耶夫斯计2 分钟前
Context Engineering:构建高可靠性 AI Agent 的底层逻辑
人工智能·python
云深麋鹿8 分钟前
C++ | 继承
开发语言·c++
Polar__Star8 分钟前
SQL如何高效导出大规模的分组汇总数据_利用分页与索引
jvm·数据库·python
2201_761040599 分钟前
HTML怎么显示复杂图表摘要_HTML数据结论文字描述区【详解】
jvm·数据库·python
m0_746752309 分钟前
HTML怎么标注回收估价规则_HTML估价逻辑说明折叠区【指南】
jvm·数据库·python
Greyson110 分钟前
SQL如何解决GROUP BY导致查询变慢_利用覆盖索引进行优化
jvm·数据库·python
小辉同志12 分钟前
Epoll+线程池
开发语言·c++·c·线程池·epoll
史迪仔011213 分钟前
[QML] Qt Quick Dialogs 模块使用指南
开发语言·前端·c++·qt
m0_6138562914 分钟前
html标签如何插入图片_html中img标签的正确使用方式【方法】
jvm·数据库·python