導航:首頁 > 編程語言 > 用python畫國旗講解

用python畫國旗講解

發布時間:2022-06-24 23:24:52

❶ 急求!這是一個用python畫國旗的程序,請求大神解釋一下每一步是幹嘛的

import turtle //導入模塊
import time
import os
def draw_square(org_x, org_y, x, y): //定義紅旗繪制函數
turtle.setpos(org_x, org_y) //定義畫筆初始位置
turtle.color('red', 'red') //顏色
turtle.begin_fill() //開始繪制
turtle.fd(x) //繪制偏轉方向和角度
turtle.lt(90)
turtle.fd(y)
turtle.lt(90)
turtle.fd(x)
turtle.lt(90)
turtle.fd(y)
turtle.end_fill() //繪制結束
def draw_star(center_x, center_y, radius): //定義星星繪制函數
print(center_x, center_y) //顯示位置
turtle.pencolor('black') //畫筆軌跡顏色
turtle.setpos(center_x, center_y) //中心點位置
pt1 = turtle.pos() //偏轉角度計算
turtle.circle(-radius, 360 / 5)
pt2 = turtle.pos()
turtle.circle(-radius, 360 / 5)
pt3 = turtle.pos()
turtle.circle(-radius, 360 / 5)
pt4 = turtle.pos()
turtle.circle(-radius, 360 / 5)
pt5 = turtle.pos()
turtle.color('yellow', 'yellow') //星星顏色
turtle.begin_fill() //開是繪制
turtle.goto(pt3)
turtle.goto(pt1)
turtle.goto(pt4)
turtle.goto(pt2)
turtle.goto(pt5)
turtle.end_fill() //繪制結束
print(turtle.pos())
turtle.pu() //隱藏畫筆軌跡
draw_square(-320, -260, 660, 440) //繪制紅旗
star_part_x = -320 //自定義星星大小等屬性
star_part_y = -260 + 440
star_part_s = 660 / 30
center_x, center_y = star_part_x + star_part_s * 5, star_part_y - star_part_s * 5 //計算星星中心點位置
turtle.setpos(center_x, center_y)
turtle.lt(90)
draw_star(star_part_x + star_part_s * 5, star_part_y - star_part_s * 2, star_part_s * 3) //繪制星星
turtle.goto(star_part_x + star_part_s * 10, star_part_y - star_part_s * 2) //同上
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.goto(star_part_x + star_part_s * 12, star_part_y - star_part_s * 4)
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.goto(star_part_x + star_part_s * 12, star_part_y - star_part_s * 7)
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.goto(star_part_x + star_part_s * 10, star_part_y - star_part_s * 9)
turtle.lt(round(turtle.towards(center_x, center_y)) - turtle.heading())
turtle.fd(star_part_s)
turtle.rt(90)
draw_star(turtle.xcor(), turtle.ycor(), star_part_s)
turtle.ht()
time.sleep(5) //設置掛起時間
os._exit(1)

❷ 如何用Python畫澳大利亞國旗

把整個國旗換成直角坐標系。
在Python中繪制標准國旗並不簡單,我們採用的方法在數學上稱為解析法。把整個國旗換成直角坐標系,中心坐標為(0,0)。每個小格邊長20,則國旗左上角坐標為(-300,200)、國旗長600,高400。Turtle是小海龜繪圖庫,Math是數學庫,要用到裡面的三角函數和反三角函數,以及圓周率pi值。
Python是一種解釋型、面向對象、動態數據類型的高級程序設計語言。 Python於1989年底發明,第一個公開發行版發行於1991年。

❸ 如何用Python繪畫日本國旗

使用Python自己的繪圖工具即可,turtle。

#encoding:utf-8
#python3.6

importturtle


defdraw_japan_flag():
#日本國旗為「太陽旗」,呈長方形,長與寬之比為3∶2。旗面為白色,正中有一輪紅日。

#紅日半徑
r=150
#畫布尺寸(寬,高)
turtle.screensize(900,600)
#設置顯示窗口像素
turtle.setup(width=900,height=600)

#移動畫筆起點
turtle.penup()
turtle.goto(0,-r)
turtle.pendown()

#設置畫筆屬性
turtle.pensize(5)
turtle.pencolor("red")
turtle.fillcolor("red")
#繪制速度,1~10個不同速度等級,小於1或者大於10立即繪制
turtle.speed(0)

#開始繪制紅日
turtle.begin_fill()
turtle.circle(r)
turtle.end_fill()

turtle.mainloop()


if__name__=="__main__":
draw_japan_flag()

❹ 請問一下網友老鐵們 美國國旗用python怎麼做呀 求其代碼 謝謝拉

參考下五星紅旗
<code>#!/usr/bin/env python
# -*- coding: utf-8 –*-
''' 對於turtle類的一些封裝方法,包括畫正多邊形,正多角形和五星紅旗。'''
__author__ = 'Hu Wenchao'

import turtle
import math

def draw_polygon(aTurtle, size=50, n=3):
''' 繪制正多邊形

args:
aTurtle: turtle對象實例
size: int類型,正多邊形的邊長
n: int類型,是幾邊形
'''
for i in xrange(n):
aTurtle.forward(size)
aTurtle.left(360.0/n)

def draw_n_angle(aTurtle, size=50, num=5, color=None):
''' 繪制正n角形,默認為黃色

args:
aTurtle: turtle對象實例
size: int類型,正多角形的邊長
n: int類型,是幾角形
color: str, 圖形顏色,默認不填色
'''
if color:
aTurtle.begin_fill()
aTurtle.fillcolor(color)
for i in xrange(num):
aTurtle.forward(size)
aTurtle.left(360.0/num)
aTurtle.forward(size)
aTurtle.right(2*360.0/num)
if color:
aTurtle.end_fill()

def draw_5_angle(aTurtle=None, start_pos=(0,0), end_pos=(0,10), radius=100, color=None):
''' 根據起始位置、結束位置和外接圓半徑畫五角星

args:
aTurtle: turtle對象實例
start_pos: int的二元tuple,要畫的五角星的外接圓圓心
end_pos: int的二元tuple,圓心指向的位置坐標點
radius: 五角星外接圓半徑
color: str, 圖形顏色,默認不填色
'''
aTurtle = aTurtle or turtle.Turtle()
size = radius * math.sin(math.pi/5)/math.sin(math.pi*2/5)
aTurtle.left(math.degrees(math.atan2(end_pos[1]-start_pos[1], end_pos[0]-start_pos[0])))
aTurtle.penup()
aTurtle.goto(start_pos)
aTurtle.fd(radius)
aTurtle.pendown()
aTurtle.right(math.degrees(math.pi*9/10))
draw_n_angle(aTurtle, size, 5, color)

def draw_5_star_flag(times=20.0):
''' 繪制五星紅旗

args:
times: 五星紅旗的規格為30*20, times為倍數,默認大小為10倍, 即300*200
'''
width, height = 30*times, 20*times
# 初始化屏幕和海龜
window = turtle.Screen()
aTurtle = turtle.Turtle()
aTurtle.hideturtle()
aTurtle.speed(10)
# 畫紅旗
aTurtle.penup()
aTurtle.goto(-width/2, height/2)
aTurtle.pendown()
aTurtle.begin_fill()
aTurtle.fillcolor('red')
aTurtle.fd(width)
aTurtle.right(90)
aTurtle.fd(height)
aTurtle.right(90)
aTurtle.fd(width)
aTurtle.right(90)
aTurtle.fd(height)
aTurtle.right(90)
aTurtle.end_fill()
# 畫大星星
draw_5_angle(aTurtle, start_pos=(-10*times, 5*times), end_pos=(-10*times, 8*times), radius=3*times, color='yellow')
# 畫四個小星星
stars_start_pos = [(-5, 8), (-3, 6), (-3, 3), (-5, 1)]
for pos in stars_start_pos:
draw_5_angle(aTurtle, start_pos=(pos[0]*times, pos[1]*times), end_pos=(-10*times, 5*times), radius=1*times, color='yellow')
# 點擊關閉窗口
window.exitonclick()

if __name__ == '__main__':
draw_5_star_flag()
</code>

❺ 怎麼用Python畫迦納國旗

#python6.6
importturtle

deftest():
#迦納共和國國旗呈長方形,長與寬之比為3∶2。
#自上而下由紅、黃、綠三個平行相等的橫長方形組成,黃色部分中間是一顆黑色五角星。
flag_h=300
flag_w=450
star_h=flag_h/3
turtle.pensize(2)
turtle.speed(5)
turtle.hideturtle()

defdraw_rectangle(color):
turtle.pencolor(color)
turtle.fillcolor(color)
turtle.pendown()
turtle.begin_fill()
turtle.forward(flag_w)
turtle.right(90)
turtle.forward(star_h)
turtle.right(90)
turtle.forward(flag_w)
turtle.right(90)
turtle.forward(star_h)
turtle.end_fill()
turtle.penup()
turtle.back(star_h)
turtle.right(90)

turtle.penup()
turtle.goto(-flag_w/2,flag_h/2)
draw_rectangle("red")
draw_rectangle("yellow")
draw_rectangle("green")

#五角星
turtle.penup()
turtle.goto(0,star_h/2)
turtle.pencolor("black")
turtle.fillcolor("black")
turtle.right(90-18)
turtle.pendown()
turtle.begin_fill()
foriinrange(5):
turtle.forward(star_h)
turtle.right(180-36)
turtle.end_fill()

turtle.done()


if__name__=="__main__":
test()

❻ 怎麼用python的turtle庫畫出這個圖案,要代碼

import turtle as t


def quad(color):

t.begin_fill()

t.color(color)

t.forward(100)

t.left(36)

t.forward(100)

t.left(36*4)

t.forward(100)

t.left(36)

t.forward(100)

t.end_fill()

t.left(36*3)



for i in range(10):

if i%2:

quad('#99c8de')

else:

quad('#e5b9c4')

兩三年沒碰海龜了,覺得沒啥用,看你賞金又提了就回去學了學

❼ 怎麼利用python畫五星紅旗,求代碼,

importturtle

t=turtle.Turtle()
whileTrue:
t.forward(200)
t.right(144)
ifabs(t.pos())<1:
break
turtle.done()

上什麼課,最近好像很多人在畫五角星,還要滑鼠點什麼的

❽ python turtle庫畫天安門

將#替換為空格,代碼如下:
from turtle import *
speed('fastest')

def rectangle(h, v, c):#畫長方形
####pendown()
####pensize(1)
####fillcolor(c)
####begin_fill()
####for counter in range(1, 3):
########forward(h)
########right(90)
########forward(v)
########right(90)
####end_fill()
####penup()

def gate(x, y, r, c):#畫大門和小門
####fillcolor(c)
####begin_fill()
####penup()
####goto(x, y)
####pendown()
####setheading(0)
####right(90)
####forward(r*2)
####left(90)
####forward(r*2)
####left(90)
####forward(r*2)
####setheading(90)
####circle(r, 180)
####end_fill()
####setheading(0)

def trapezium(x, y, c):#畫地下的大梯形
####fillcolor(c)
####begin_fill()
####penup()
####goto(x, y)#goto(-200, 0)
####pendown()
####forward(400)
####right(60)
####forward(150)
####right(120)
####forward(550)
####right(120)
####forward(150)
####right(60)
####end_fill()

def roof1(x, y, c):#畫第1個屋檐
####fillcolor(c)
####begin_fill()
####penup()
####goto(x, y)
####pendown()
####left(60)
####forward(30)
####right(60)
####forward(225)
####right(60)
####forward(30)
####left(60)
####forward(-20)
####end_fill()

def roof2(x, y, c):#畫第2個屋檐
####fillcolor(c)
####begin_fill()
####penup()
####goto(x, y)
####setheading(0)
####pendown()
####left(60)
####goto(-75, 155)
####right(60)
####goto(75, 155)
####right(60)
####goto(125, 95)
####right(120)
####goto(x ,y)
####penup()
####end_fill()

pencolor('black')
trapezium(-200, 0, 'red')
penup()
goto(-105, 95)
rectangle(210, 20, 'red')
goto(-115, 50)
rectangle(230, 50, 'red')
roof1(-125, 50, 'orange')
roof2(-125, 95, 'orange')
gate(-90, 25, 10, 'brown')
gate(-65, 25, 10, 'brown')
gate(-40, 25, 10, 'brown')####
penup()
forward(40)
gate(20, 25, 10, 'brown')
gate(45, 25, 10, 'brown')
gate(70, 25, 10, 'brown')####
gate(-160, -100, 15, 'brown')
gate(-95, -100, 15, 'brown')
gate(-30, -70, 30, 'brown')####
gate(60, -100, 15, 'brown')
gate(125, -100, 15, 'brown')
done()

閱讀全文

與用python畫國旗講解相關的資料

熱點內容
怎麼查看u盤加密區 瀏覽:181
台電加密是什麼格式 瀏覽:155
php論壇版塊在哪個文件夾 瀏覽:442
暗黑的伺服器為什麼維護 瀏覽:623
android內存溢出的原因 瀏覽:17
標志307的壓縮比是多少 瀏覽:636
伺服器啟動為什麼叫三聲 瀏覽:997
追風箏的人英文pdf 瀏覽:939
解壓小熊手機殼 瀏覽:346
成都市區建成面積演算法 瀏覽:660
智能家居單片機 瀏覽:97
買男裝用什麼app好 瀏覽:855
文件夾合並了怎麼拆開 瀏覽:260
波段副圖源碼無未來函數 瀏覽:89
livecn伺服器地址 瀏覽:259
程序員這個工作真的很吃香嗎 瀏覽:847
程序員和數學分析師待遇 瀏覽:681
壓縮氣彈簧怎麼拆 瀏覽:325
華為公有雲伺服器添加虛擬ip 瀏覽:211
程序員和運營哪個累 瀏覽:27