利用Python如何畫(huà)一顆心、小人發(fā)射愛(ài)心
源碼:
#!/usr/bin/env python # -*- coding:utf-8 -*- import turtle import time # 畫(huà)心形圓弧 def hart_arc(): for i in range(200): turtle.right(1) turtle.forward(2) def move_pen_position(x, y): turtle.hideturtle() # 隱藏畫(huà)筆(先) turtle.up() # 提筆 turtle.goto(x, y) # 移動(dòng)畫(huà)筆到指定起始坐標(biāo)(窗口中心為0,0) turtle.down() # 下筆 turtle.showturtle() # 顯示畫(huà)筆 # 初始化 turtle.setup(width=800, height=500) # 窗口(畫(huà)布)大小 turtle.color('red', 'pink') # 畫(huà)筆顏色 turtle.pensize(3) # 畫(huà)筆粗細(xì) turtle.speed(1) # 描繪速度 # 初始化畫(huà)筆起始坐標(biāo) move_pen_position(x=0,y=-180) # 移動(dòng)畫(huà)筆位置 turtle.left(140) # 向左旋轉(zhuǎn)140度 turtle.begin_fill() # 標(biāo)記背景填充位置 # 畫(huà)心形直線( 左下方 ) turtle.forward(224) # 向前移動(dòng)畫(huà)筆,長(zhǎng)度為224 # 畫(huà)愛(ài)心圓弧 hart_arc() # 左側(cè)圓弧 turtle.left(120) # 調(diào)整畫(huà)筆角度 hart_arc() # 右側(cè)圓弧 # 畫(huà)心形直線( 右下方 ) turtle.forward(224) turtle.end_fill() # 標(biāo)記背景填充結(jié)束位置 # 點(diǎn)擊窗口關(guān)閉程序 window = turtle.Screen() window.exitonclick()
效果圖:
源碼:
import turtle as t from time import sleep def go_to(x, y): t.up() t.goto(x, y) t.down() def head(x, y, r): go_to(x, y) t.speed(20) t.circle(r) leg(x, y) def leg(x, y): t.right(90) t.forward(180) t.right(30) t.forward(100) t.left(120) go_to(x, y - 180) t.forward(100) t.right(120) t.forward(100) t.left(120) hand(x, y) def hand(x, y): go_to(x, y - 60) t.forward(100) t.left(60) t.forward(100) go_to(x, y - 90) t.right(60) t.forward(100) t.right(60) t.forward(100) t.left(60) eye(x, y) def eye(x, y): go_to(x - 50, y + 130) t.right(90) t.forward(50) go_to(x + 40, y + 130) t.forward(50) t.left(90) def big_Circle(size): t.speed(20) for i in range(150): t.forward(size) t.right(0.3) def line(size): t.speed(20) t.forward(51 * size) def small_Circle(size): t.speed(20) for i in range(210): t.forward(size) t.right(0.786) def heart(x, y, size): go_to(x, y) t.left(150) t.begin_fill() line(size) big_Circle(size) small_Circle(size) t.left(120) small_Circle(size) big_Circle(size) line(size) t.end_fill() def main(): t.pensize(2) t.color('red', 'pink') head(-120, 100, 100) heart(250, -80, 1) go_to(100, -300) t.write("To: 智慧與美貌并存的", move=True, align="left", font=("楷體", 20, "normal")) t.done() main()
效果圖:
總結(jié)
到此這篇關(guān)于利用Python如何畫(huà)一顆心、小人發(fā)射愛(ài)心的文章就介紹到這了,更多相關(guān)Python畫(huà)小人發(fā)射愛(ài)心內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Python實(shí)現(xiàn)給喜歡的主播自動(dòng)發(fā)彈幕
這篇文章主要介紹了python如何實(shí)現(xiàn)給喜歡的主播自動(dòng)發(fā)彈幕的功能,文中的示例代碼對(duì)我們學(xué)習(xí)Python有一定的幫助,感興趣的朋友可以了解下2021-12-12Python可視化神器pyecharts繪制儀表盤(pán)
這篇文章主要介紹了Python可視化神器pyecharts繪制儀表盤(pán),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07Python讀取Excel數(shù)據(jù)實(shí)現(xiàn)批量生成合同
Python在自動(dòng)化辦公方面具有極大的優(yōu)勢(shì),可以解決我們工作中遇到的很多重復(fù)性問(wèn)題。本文將通過(guò)Python讀取Excel數(shù)據(jù)實(shí)現(xiàn)批量生成合同,需要的可以參考一下2022-05-05Python SMTP發(fā)送郵件遇到的一些問(wèn)題及解決辦法
今天小編就為大家分享一篇關(guān)于Python SMTP發(fā)送郵件遇到的一些問(wèn)題及解決辦法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-10-10Python中執(zhí)行JavaScript實(shí)現(xiàn)數(shù)據(jù)抓取的多種方法
JavaScript是一門(mén)強(qiáng)大的腳本語(yǔ)言,廣泛應(yīng)用于網(wǎng)頁(yè)前端開(kāi)發(fā)、構(gòu)建交互式用戶(hù)界面以及處理各種客戶(hù)端端任務(wù),有時(shí)可能需要在Python環(huán)境中執(zhí)行JavaScript代碼,本文將介紹多種方法,幫助你在Python中執(zhí)行 JavaScript代碼,并提供詳盡的示例代碼,使你能夠輕松掌握這一技能2023-11-11Python爬取百度地圖POI數(shù)據(jù)代碼的步驟
爬取百度地圖的POI數(shù)據(jù)涉及法律和道德問(wèn)題,因?yàn)檫@類(lèi)數(shù)據(jù)受到版權(quán)保護(hù),且大多數(shù)在線地圖服務(wù)都有嚴(yán)格的反爬蟲(chóng)措施,這篇文章主要介紹了Python爬取百度地圖POI數(shù)據(jù)代碼,需要的朋友可以參考下2024-08-08Python之字典對(duì)象的幾種創(chuàng)建方法
這篇文章主要介紹了Python之字典對(duì)象的幾種創(chuàng)建方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09django rest framework serializer返回時(shí)間自動(dòng)格式化方法
這篇文章主要介紹了django rest framework serializer返回時(shí)間自動(dòng)格式化方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03