日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
python繪圖函數(shù)返回 用python繪制函數(shù)圖像

Python 函數(shù) - 返回生成器

如果函數(shù)要返回一系列結(jié)果,我們常見的方法就是將結(jié)果放到一份列表中,然后返回給調(diào)用者。比如下面的函數(shù),返回字符串中每個單詞的首字母在真?zhèn)€字符串中的索引:

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:主機(jī)域名雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、立山網(wǎng)站維護(hù)、網(wǎng)站推廣。

運(yùn)行結(jié)果:

上述的結(jié)果完全符合我們的預(yù)期,但 get_word_index 函數(shù)不夠簡潔。下面我們嘗試使用生成器來實(shí)現(xiàn):

運(yùn)行結(jié)果:

改寫之后,不僅運(yùn)行結(jié)果符合要求,由于不需要和 result 列表交互,函數(shù)也變得非常簡潔。下面我們就來詳細(xì)學(xué)習(xí)下生成器吧~

生成器是指使用 yield 表達(dá)式的函數(shù),調(diào)用生成器函數(shù)時,它并不會真的運(yùn)行,而是會返回迭代器。每次在這個迭代器上面調(diào)用內(nèi)置的 next 函數(shù)時,迭代器就會把生成器推進(jìn)到下一個 yield 表達(dá)式那里。生成器傳給 yield 的值均會由迭代器返回給調(diào)用者。

此外,如果輸入量非常大,使用列表作為返回值,那么程序就有可能耗盡內(nèi)存并崩潰。相反,使用生成器之后,則可以應(yīng)對任意長度的輸入數(shù)據(jù)。

例如,下面這個生成器函數(shù)可以獲取文件中單詞的索引,而不管文件內(nèi)容多大,該函數(shù)執(zhí)行時消耗的內(nèi)存,只由單行的文本長度決定:

其中 test_generator.txt 中的內(nèi)容如下:

運(yùn)行結(jié)果:

下面這句話特別重要: 生成器函數(shù)返回的迭代器,是由狀態(tài)的,及調(diào)用者不應(yīng)該反復(fù)使用它 。我們那 word_index_iter 來說明:

如果想重復(fù)調(diào)用,請將其封裝成容器:

運(yùn)行結(jié)果:

關(guān)于上述自定義容器的實(shí)現(xiàn)原理,我的另外一篇文章做了詳細(xì)介紹,鏈接奉上:

python+函數(shù)的返回值能不能直接輸出?

在Python中,一個函數(shù)的返回值可以直接輸出,示例代碼如下:

# 定義一個函數(shù)

def add(a, b):

return a + b

# 調(diào)用函數(shù)并輸出返回值

print(add(1, 2))

在這段代碼中,我們首先定義了一個名為add的函數(shù),該函數(shù)接收兩個參數(shù)a和b,并通過return語句返回它們的和。接著,我們調(diào)用該函數(shù)并傳入?yún)?shù)1和2,并使用print函數(shù)輸出函數(shù)的返回值,即3。

請注意,上面的代碼只是一個示例,實(shí)際應(yīng)用中可能需要根據(jù)實(shí)際情況進(jìn)行更多的處理,比如考慮函數(shù)沒有返回值等情況。

Python繪圖之(1)Turtle庫詳解

Turtle庫是Python語言中一個很流行的繪制圖像的函數(shù)庫,想象一個小烏龜,在一個橫軸為x、縱軸為y的坐標(biāo)系原點(diǎn),(0,0)位置開始,它根據(jù)一組函數(shù)指令的控制,在這個平面坐標(biāo)系中移動,從而在它爬行的路徑上繪制了圖形。

畫布就是turtle為我們展開用于繪圖區(qū)域,我們可以設(shè)置它的大小和初始位置。

設(shè)置畫布大小

turtle.screensize(canvwidth=None, canvheight=None, bg=None),參數(shù)分別為畫布的寬(單位像素), 高, 背景顏色。

如:turtle.screensize(800,600, "green")

turtle.screensize() #返回默認(rèn)大小(400, 300)

turtle.setup(width=0.5, height=0.75, startx=None, starty=None),參數(shù):width, height: 輸入寬和高為整數(shù)時, 表示像素; 為小數(shù)時, 表示占據(jù)電腦屏幕的比例,(startx, starty): 這一坐標(biāo)表示矩形窗口左上角頂點(diǎn)的位置, 如果為空,則窗口位于屏幕中心。

如:turtle.setup(width=0.6,height=0.6)

turtle.setup(width=800,height=800, startx=100, starty=100)

2.1 畫筆的狀態(tài)

在畫布上,默認(rèn)有一個坐標(biāo)原點(diǎn)為畫布中心的坐標(biāo)軸,坐標(biāo)原點(diǎn)上有一只面朝x軸正方向小烏龜。這里我們描述小烏龜時使用了兩個詞語:坐標(biāo)原點(diǎn)(位置),面朝x軸正方向(方向), turtle繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態(tài)。

2.2 畫筆的屬性

畫筆(畫筆的屬性,顏色、畫線的寬度等)

1) turtle.pensize():設(shè)置畫筆的寬度;

2) turtle.pencolor():沒有參數(shù)傳入,返回當(dāng)前畫筆顏色,傳入?yún)?shù)設(shè)置畫筆顏色,可以是字符串如"green", "red",也可以是RGB 3元組。

3) turtle.speed(speed):設(shè)置畫筆移動速度,畫筆繪制的速度范圍[0,10]整數(shù),數(shù)字越大越快。

2.3 繪圖命令

操縱海龜繪圖有著許多的命令,這些命令可以劃分為3種:一種為運(yùn)動命令,一種為畫筆控制命令,還有一種是全局控制命令。

(1) 畫筆運(yùn)動命令

(2) 畫筆控制命令

(3) 全局控制命令

(4) 其他命令

3. 命令詳解

3.1 turtle.circle(radius, extent=None, steps=None)

描述:以給定半徑畫圓

參數(shù):

radius(半徑):半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓;

extent(弧度) (optional);

steps (optional) (做半徑為radius的圓的內(nèi)切正多邊形,多邊形邊數(shù)為steps)。

舉例:

circle(50) # 整圓;

circle(50,steps=3) # 三角形;

circle(120, 180) # 半圓

實(shí)例:

1、太陽花

2、五角星

3、時鐘程序


標(biāo)題名稱:python繪圖函數(shù)返回 用python繪制函數(shù)圖像
URL網(wǎng)址:http://www.dlmjj.cn/article/hgsooh.html