日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

用python画爱心再加一行文字_如何理解python一行代码实现一个爱心字符画?

發(fā)布時(shí)間:2023/12/15 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用python画爱心再加一行文字_如何理解python一行代码实现一个爱心字符画? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言

python中有個(gè)很酷的效果,一行代碼實(shí)現(xiàn)一個(gè)愛心字符,雖說是一行代碼,但是理解起來還是比較難的,括號太多,并且使用了python的一些快捷小技巧。比如三元表達(dá)式,列表生成式,字符串拼接以及一個(gè)心形曲線公式:(x2+y2-1)3-x2y3=0。

下面通過分解來理解這行代碼,這里主要理解三元表達(dá)式,列表生成式,還有就是循環(huán)中的數(shù)字為什么是-30,30和30,-30。

三元表達(dá)式理解

三元表達(dá)式其實(shí)就是將if else語句一行書寫,格式為:result = 為真實(shí)的結(jié)果 if 判斷條件 else 為假時(shí)的結(jié)果。

列表生成式理解

原理分析

最終結(jié)果是一個(gè)愛心的字符串形狀,實(shí)際上先打印出60行和60列的字符串方陣,這里為了演示,先使用了一個(gè)字符串。

根據(jù)上面的效果可以看出的確是一個(gè)字符方陣,如何將這個(gè)方陣變成愛心的形狀,就需要利用心形曲線公式:(x2+y2-1)3-x2y3=0。這里我們?nèi)绻∮? 就顯示 字符 O,否則就顯示 點(diǎn)(.)。

愛心形狀出來了,如果想要只保留愛心形狀,只需要將外圍一圈O寫成空字符就可以了。現(xiàn)在還有循環(huán)中的數(shù)值范圍是如何求得不清楚。

這里就涉及到解方程了,求邊界的范圍。

求解邊界范圍

通過sympy庫,可以直接使用隱函數(shù)公式,不用給定一系列點(diǎn)就可以直接繪制出圖形來,非常方便,根據(jù)圖形可以 看出x和y取值范圍。

繪制散點(diǎn)圖

上面求出的范圍非常小,有點(diǎn)沒想到,我們通過這個(gè)范圍去繪制一個(gè)散點(diǎn)圖試試。

理解

根據(jù)結(jié)果可以看出的確是一個(gè)個(gè)點(diǎn)形成的,由于點(diǎn)比較多,顯示區(qū)間比較小,整體看上去就像一個(gè)愛心的效果了。

這里有些方法可能比較難理解,可以結(jié)合下面的兩張圖片理解,它們的作用就是將滿足條件地點(diǎn)的x和y坐標(biāo)分別提取出來,為后面繪圖做準(zhǔn)備。

如果不好理解,也可以采用下面這個(gè)方法,更好理解。

打印愛心字符圖形

前面利用散點(diǎn)圖的方式,繪制出了一個(gè)愛心圖形,實(shí)際上是由一個(gè)個(gè)點(diǎn)組成的,如果將點(diǎn)用字符來替代,那么就可以變成字符圖形了。這里的arange中的數(shù)字間隔0.1,根據(jù)你想要的點(diǎn)多少可以調(diào)整。

上面的0.1的間隔顯得有點(diǎn)細(xì)長,讓橫向的點(diǎn)多一些,就可以變得圓潤一點(diǎn)了。

將當(dāng)個(gè)字符改成字符串,利用字符串的索引可以獲取到不同的字符,也可以使用隨機(jī)方法去選取。

解開疑惑

通過上面動(dòng)手自己實(shí)現(xiàn),可以知道實(shí)際上愛心的邊界范圍,但是單行中確是-30,30,這里是因?yàn)樗膞和yj乘以了一個(gè)比較小的數(shù)進(jìn)行的縮放,從而放大了它的取值范圍,原理和我們上面調(diào)整arange中的間隔數(shù)字大小是一樣的。

(全文完)

顯示進(jìn)度下載圖片

如何使用python實(shí)現(xiàn)文本進(jìn)度條?

建構(gòu)主義教學(xué)的核心是什么?

python小游戲設(shè)計(jì)入門5-撿金幣游戲(下)

總結(jié)

以上是生活随笔為你收集整理的用python画爱心再加一行文字_如何理解python一行代码实现一个爱心字符画?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。