欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

python數(shù)值函數(shù),python函數(shù)介紹

Python的函數(shù)都有哪些?

Python 函數(shù)

成都創(chuàng)新互聯(lián)公司是一家成都網(wǎng)站制作、成都網(wǎng)站建設(shè),提供網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),網(wǎng)站制作,建網(wǎng)站,按需搭建網(wǎng)站,網(wǎng)站開發(fā)公司,成立與2013年是互聯(lián)行業(yè)建設(shè)者,服務(wù)者。以提升客戶品牌價(jià)值為核心業(yè)務(wù),全程參與項(xiàng)目的網(wǎng)站策劃設(shè)計(jì)制作,前端開發(fā),后臺(tái)程序制作以及后期項(xiàng)目運(yùn)營并提出專業(yè)建議和思路。

函數(shù)是組織好的,可重復(fù)使用的,用來實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。

函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。你已經(jīng)知道Python提供了許多內(nèi)建函數(shù),比如print()。但你也可以自己創(chuàng)建函數(shù),這被叫做用戶自定義函數(shù)。

定義一個(gè)函數(shù)

你可以定義一個(gè)由自己想要功能的函數(shù),以下是簡單的規(guī)則:

函數(shù)代碼塊以?def?關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()。

任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間。圓括號(hào)之間可以用于定義參數(shù)。

函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。

函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)。

return [表達(dá)式]?結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回 None。

語法

def functionname( parameters ): ? "函數(shù)_文檔字符串"

function_suite

return [expression]

默認(rèn)情況下,參數(shù)值和參數(shù)名稱是按函數(shù)聲明中定義的順序匹配起來的。

實(shí)例

以下為一個(gè)簡單的Python函數(shù),它將一個(gè)字符串作為傳入?yún)?shù),再打印到標(biāo)準(zhǔn)顯示設(shè)備上。

實(shí)例(Python 2.0+)

def printme( str ): ? "打印傳入的字符串到標(biāo)準(zhǔn)顯示設(shè)備上"

print str

return

函數(shù)調(diào)用

定義一個(gè)函數(shù)只給了函數(shù)一個(gè)名稱,指定了函數(shù)里包含的參數(shù),和代碼塊結(jié)構(gòu)。

這個(gè)函數(shù)的基本結(jié)構(gòu)完成以后,你可以通過另一個(gè)函數(shù)調(diào)用執(zhí)行,也可以直接從Python提示符執(zhí)行。

如下實(shí)例調(diào)用了printme()函數(shù):

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

# 定義函數(shù)def printme( str ): ? "打印任何傳入的字符串"

print str

return

# 調(diào)用函數(shù)printme("我要調(diào)用用戶自定義函數(shù)!")printme("再次調(diào)用同一函數(shù)")

以上實(shí)例輸出結(jié)果:

我要調(diào)用用戶自定義函數(shù)!再次調(diào)用同一函數(shù)

參數(shù)傳遞

在 python 中,類型屬于對(duì)象,變量是沒有類型的:

a=[1,2,3]

a="Runoob"

以上代碼中,[1,2,3]?是 List 類型,"Runoob"?是 String 類型,而變量 a 是沒有類型,她僅僅是一個(gè)對(duì)象的引用(一個(gè)指針),可以是 List 類型對(duì)象,也可以指向 String 類型對(duì)象。

可更改(mutable)與不可更改(immutable)對(duì)象

在 python 中,strings, tuples, 和 numbers 是不可更改的對(duì)象,而 list,dict 等則是可以修改的對(duì)象。

不可變類型:變量賦值?a=5?后再賦值?a=10,這里實(shí)際是新生成一個(gè) int 值對(duì)象 10,再讓 a 指向它,而 5 被丟棄,不是改變a的值,相當(dāng)于新生成了a。

可變類型:變量賦值?la=[1,2,3,4]?后再賦值?la[2]=5?則是將 list la 的第三個(gè)元素值更改,本身la沒有動(dòng),只是其內(nèi)部的一部分值被修改了。

python 函數(shù)的參數(shù)傳遞:

不可變類型:類似 c++ 的值傳遞,如 整數(shù)、字符串、元組。如fun(a),傳遞的只是a的值,沒有影響a對(duì)象本身。比如在 fun(a)內(nèi)部修改 a 的值,只是修改另一個(gè)復(fù)制的對(duì)象,不會(huì)影響 a 本身。

可變類型:類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改后fun外部的la也會(huì)受影響

python 中一切都是對(duì)象,嚴(yán)格意義我們不能說值傳遞還是引用傳遞,我們應(yīng)該說傳不可變對(duì)象和傳可變對(duì)象。

python 傳不可變對(duì)象實(shí)例

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

def ChangeInt( a ): ? ?a = 10

b = 2ChangeInt(b)print b # 結(jié)果是 2

實(shí)例中有 int 對(duì)象 2,指向它的變量是 b,在傳遞給 ChangeInt 函數(shù)時(shí),按傳值的方式復(fù)制了變量 b,a 和 b 都指向了同一個(gè) Int 對(duì)象,在 a=10 時(shí),則新生成一個(gè) int 值對(duì)象 10,并讓 a 指向它。

傳可變對(duì)象實(shí)例

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

# 可寫函數(shù)說明def changeme( mylist ): ? "修改傳入的列表"

mylist.append([1,2,3,4])

print "函數(shù)內(nèi)取值: ", mylist

return

# 調(diào)用changeme函數(shù)mylist = [10,20,30]changeme( mylist )print "函數(shù)外取值: ", mylist

實(shí)例中傳入函數(shù)的和在末尾添加新內(nèi)容的對(duì)象用的是同一個(gè)引用,故輸出結(jié)果如下:

函數(shù)內(nèi)取值: ?[10, 20, 30, [1, 2, 3, 4]]函數(shù)外取值: ?[10, 20, 30, [1, 2, 3, 4]]

參數(shù)

以下是調(diào)用函數(shù)時(shí)可使用的正式參數(shù)類型:

必備參數(shù)

關(guān)鍵字參數(shù)

默認(rèn)參數(shù)

不定長參數(shù)

必備參數(shù)

必備參數(shù)須以正確的順序傳入函數(shù)。調(diào)用時(shí)的數(shù)量必須和聲明時(shí)的一樣。

調(diào)用printme()函數(shù),你必須傳入一個(gè)參數(shù),不然會(huì)出現(xiàn)語法錯(cuò)誤:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

#可寫函數(shù)說明def printme( str ): ? "打印任何傳入的字符串"

print str

return

#調(diào)用printme函數(shù)printme()

以上實(shí)例輸出結(jié)果:

Traceback (most recent call last):

File "test.py", line 11, in module

printme()TypeError: printme() takes exactly 1 argument (0 given)

關(guān)鍵字參數(shù)

關(guān)鍵字參數(shù)和函數(shù)調(diào)用關(guān)系緊密,函數(shù)調(diào)用使用關(guān)鍵字參數(shù)來確定傳入的參數(shù)值。

使用關(guān)鍵字參數(shù)允許函數(shù)調(diào)用時(shí)參數(shù)的順序與聲明時(shí)不一致,因?yàn)?Python 解釋器能夠用參數(shù)名匹配參數(shù)值。

以下實(shí)例在函數(shù) printme() 調(diào)用時(shí)使用參數(shù)名:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

#可寫函數(shù)說明def printme( str ): ? "打印任何傳入的字符串"

print str

return

#調(diào)用printme函數(shù)printme( str = "My string")

以上實(shí)例輸出結(jié)果:

My string

下例能將關(guān)鍵字參數(shù)順序不重要展示得更清楚:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

#可寫函數(shù)說明def printinfo( name, age ): ? "打印任何傳入的字符串"

print "Name: ", name

print "Age ", age

return

#調(diào)用printinfo函數(shù)printinfo( age=50, name="miki" )

以上實(shí)例輸出結(jié)果:

Name: ?mikiAge ?50

默認(rèn)參數(shù)

調(diào)用函數(shù)時(shí),默認(rèn)參數(shù)的值如果沒有傳入,則被認(rèn)為是默認(rèn)值。下例會(huì)打印默認(rèn)的age,如果age沒有被傳入:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

#可寫函數(shù)說明def printinfo( name, age = 35 ): ? "打印任何傳入的字符串"

print "Name: ", name

print "Age ", age

return

#調(diào)用printinfo函數(shù)printinfo( age=50, name="miki" )printinfo( name="miki" )

以上實(shí)例輸出結(jié)果:

Name: ?mikiAge ?50Name: ?mikiAge ?35

不定長參數(shù)

你可能需要一個(gè)函數(shù)能處理比當(dāng)初聲明時(shí)更多的參數(shù)。這些參數(shù)叫做不定長參數(shù),和上述2種參數(shù)不同,聲明時(shí)不會(huì)命名?;菊Z法如下:

def functionname([formal_args,] *var_args_tuple ): ? "函數(shù)_文檔字符串"

function_suite

return [expression]

加了星號(hào)(*)的變量名會(huì)存放所有未命名的變量參數(shù)。不定長參數(shù)實(shí)例如下:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

# 可寫函數(shù)說明def printinfo( arg1, *vartuple ): ? "打印任何傳入的參數(shù)"

print "輸出: "

print arg1

for var in vartuple: ? ? ?print var

return

# 調(diào)用printinfo 函數(shù)printinfo( 10 )printinfo( 70, 60, 50 )

以上實(shí)例輸出結(jié)果:

輸出:10輸出:706050

匿名函數(shù)

python 使用 lambda 來創(chuàng)建匿名函數(shù)。

lambda只是一個(gè)表達(dá)式,函數(shù)體比def簡單很多。

lambda的主體是一個(gè)表達(dá)式,而不是一個(gè)代碼塊。僅僅能在lambda表達(dá)式中封裝有限的邏輯進(jìn)去。

lambda函數(shù)擁有自己的命名空間,且不能訪問自有參數(shù)列表之外或全局命名空間里的參數(shù)。

雖然lambda函數(shù)看起來只能寫一行,卻不等同于C或C++的內(nèi)聯(lián)函數(shù),后者的目的是調(diào)用小函數(shù)時(shí)不占用棧內(nèi)存從而增加運(yùn)行效率。

語法

lambda函數(shù)的語法只包含一個(gè)語句,如下:

lambda [arg1 [,arg2,.....argn]]:expression

如下實(shí)例:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

# 可寫函數(shù)說明sum = lambda arg1, arg2: arg1 + arg2

# 調(diào)用sum函數(shù)print "相加后的值為 : ", sum( 10, 20 )print "相加后的值為 : ", sum( 20, 20 )

以上實(shí)例輸出結(jié)果:

相加后的值為 : ?30相加后的值為 : ?40

return 語句

return語句[表達(dá)式]退出函數(shù),選擇性地向調(diào)用方返回一個(gè)表達(dá)式。不帶參數(shù)值的return語句返回None。之前的例子都沒有示范如何返回?cái)?shù)值,下例便告訴你怎么做:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

# 可寫函數(shù)說明def sum( arg1, arg2 ): ? # 返回2個(gè)參數(shù)的和."

total = arg1 + arg2

print "函數(shù)內(nèi) : ", total

return total

# 調(diào)用sum函數(shù)total = sum( 10, 20 )

以上實(shí)例輸出結(jié)果:

函數(shù)內(nèi) : ?30

變量作用域

一個(gè)程序的所有的變量并不是在哪個(gè)位置都可以訪問的。訪問權(quán)限決定于這個(gè)變量是在哪里賦值的。

變量的作用域決定了在哪一部分程序你可以訪問哪個(gè)特定的變量名稱。兩種最基本的變量作用域如下:

全局變量

局部變量

全局變量和局部變量

定義在函數(shù)內(nèi)部的變量擁有一個(gè)局部作用域,定義在函數(shù)外的擁有全局作用域。

局部變量只能在其被聲明的函數(shù)內(nèi)部訪問,而全局變量可以在整個(gè)程序范圍內(nèi)訪問。調(diào)用函數(shù)時(shí),所有在函數(shù)內(nèi)聲明的變量名稱都將被加入到作用域中。如下實(shí)例:

實(shí)例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-

total = 0 # 這是一個(gè)全局變量# 可寫函數(shù)說明def sum( arg1, arg2 ): ? #返回2個(gè)參數(shù)的和."

total = arg1 + arg2 # total在這里是局部變量.

print "函數(shù)內(nèi)是局部變量 : ", total

return total

#調(diào)用sum函數(shù)sum( 10, 20 )print "函數(shù)外是全局變量 : ", total

以上實(shí)例輸出結(jié)果:

函數(shù)內(nèi)是局部變量 : ?30函數(shù)外是全局變量 : ?0

python有多少內(nèi)置函數(shù)

Python內(nèi)置函數(shù)有很多,為大家推薦5個(gè)神仙級(jí)的內(nèi)置函數(shù):

(1)Lambda函數(shù)

用于創(chuàng)建匿名函數(shù),即沒有名稱的函數(shù)。它只是一個(gè)表達(dá)式,函數(shù)體比def簡單很多。當(dāng)我們需要?jiǎng)?chuàng)建一個(gè)函數(shù)來執(zhí)行單個(gè)操作并且可以在一行中編寫時(shí),就可以用到匿名函數(shù)了。

Lamdba的主體是一個(gè)表達(dá)式,而不是一個(gè)代碼塊。僅僅能在lambda表達(dá)式中封裝有限的邏輯進(jìn)去。

利用Lamdba函數(shù),往往可以將代碼簡化許多。

(2)Map函數(shù)

會(huì)將一個(gè)函數(shù)映射到一個(gè)輸入列表的所有元素上,比如我們先創(chuàng)建了一個(gè)函數(shù)來返回一個(gè)大寫的輸入單詞,然后將此函數(shù)應(yīng)有到列表colors中的所有元素。

我們還可以使用匿名函數(shù)lamdba來配合map函數(shù),這樣可以更加精簡。

(3)Reduce函數(shù)

當(dāng)需要對(duì)一個(gè)列表進(jìn)行一些計(jì)算并返回結(jié)果時(shí),reduce()是個(gè)非常有用的函數(shù)。舉個(gè)例子,當(dāng)需要計(jì)算一個(gè)整數(shù)列表所有元素的乘積時(shí),即可使用reduce函數(shù)實(shí)現(xiàn)。

它與函數(shù)的最大的區(qū)別就是,reduce()里的映射函數(shù)(function)接收兩個(gè)參數(shù),而map接收一個(gè)參數(shù)。

(4)enumerate函數(shù)

用于將一個(gè)可遍歷的數(shù)據(jù)對(duì)象(如列表、元組或字符串)組合為一個(gè)索引序列,同時(shí)列出數(shù)據(jù)和數(shù)據(jù)下標(biāo),一般用在for循環(huán)當(dāng)中。

它的兩個(gè)參數(shù),一個(gè)是序列、迭代器或其他支持迭代對(duì)象;另一個(gè)是下標(biāo)起始位置,默認(rèn)情況從0開始,也可以自定義計(jì)數(shù)器的起始編號(hào)。

(5)Zip函數(shù)

用于將可迭代的對(duì)象作為參數(shù),將對(duì)象中對(duì)應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的列表

當(dāng)我們使用zip()函數(shù)時(shí),如果各個(gè)迭代器的元素個(gè)數(shù)不一致,則返回列表長度與最短的對(duì)象相同。

如何用python編一個(gè)函數(shù),對(duì)輸入的任意多個(gè)數(shù)進(jìn)行求平均值。任意多個(gè)數(shù)!

lst = [] #定義一個(gè)空列表

str = raw_input("請(qǐng)輸入數(shù)值,用空格隔開:")

lst1 = str.split(" ")#lst1用來存儲(chǔ)輸入的字符串,用空格分割

i = 0

while i = len(lst1)+1:

lst.a(chǎn)ppend(int(lst1.pop()))#將lst1的數(shù)據(jù)轉(zhuǎn)換為整型并賦值給lst

i += 1

#print(lst)

def sum(list):

"對(duì)列表的數(shù)值求和"

s = 0

for x in list:

s += x

return s

def average(list):

"對(duì)列表數(shù)據(jù)求平均值"

avg = 0

avg = sum(list)/(len(list)*1.0) #調(diào)用sum函數(shù)求和

return avg

print("avg = %f"%average(lst))

擴(kuò)展資料:

for循環(huán)小括號(hào)里第一個(gè)“;”號(hào)前為一個(gè)為不參與循環(huán)的單次表達(dá)式,其可作為某一變量的初始化賦值語句, 用來給循環(huán)控制變量賦初值; 也可用來計(jì)算其它與for循環(huán)無關(guān)但先于循環(huán)部分處理的一個(gè)表達(dá)式。

執(zhí)行的中間循環(huán)體可以為一個(gè)語句,也可以為多個(gè)語句,當(dāng)中間循環(huán)體只有一個(gè)語句時(shí),其大括號(hào){}可以省略,執(zhí)行完中間循環(huán)體后接著執(zhí)行末尾循環(huán)體。

執(zhí)行末尾循環(huán)體后將再次進(jìn)行條件判斷,若條件還成立,則繼續(xù)重復(fù)上述循環(huán),當(dāng)條件不成立時(shí)則跳出當(dāng)下for循環(huán)。

Python函數(shù)和模塊的定義與使用,包括變量的類型及匿名函數(shù)用法

函數(shù)是組織好,可重復(fù)使用的,用來實(shí)現(xiàn)相關(guān)功能的代碼段

函數(shù)提高了代碼的重復(fù)利用率和應(yīng)用的模塊性。

除Python自帶的函數(shù)之外,也可以自己創(chuàng)建函數(shù),叫做自定義函數(shù)

語法:

函數(shù)代碼塊以 def 開頭

參數(shù)為 輸入值 ,放于函數(shù)名后口號(hào)里面,

函數(shù)內(nèi)容以冒號(hào):開始,函數(shù)體縮進(jìn), return 返回 輸出值

函數(shù)調(diào)用使用關(guān)鍵字參數(shù)來確定傳入的參數(shù)值,此時(shí),如果多個(gè)函數(shù)則不需要按照指定順序。

在定義函數(shù)時(shí),指定參數(shù)默認(rèn)值。調(diào)用時(shí)如果不傳入?yún)?shù),則使用默認(rèn)值

不定長部分如果沒有指定參數(shù),傳入是一個(gè)空元組

加了 兩個(gè)星號(hào) ** 的參數(shù)會(huì)以字典的形式導(dǎo)入

/ 用來指明函數(shù)形參必須使用指定位置參數(shù),不能使用關(guān)鍵字參數(shù)的形式。

3.8版本之后的才能使用

不使用 def 定義函數(shù),沒有函數(shù)名

lamdba主體時(shí)一個(gè)表達(dá)式,而不是代碼塊,函數(shù)體比def簡單很多

定義在函數(shù)內(nèi)部的為局部變量,僅能在函數(shù)內(nèi)部使用

定義在函數(shù)外部的為全局變量,可在全局使用

模塊是將包含所有定義的函數(shù)和變量的文件,一般將同類功能的函數(shù)組和在一起稱為模塊。

模塊需要導(dǎo)入后,在調(diào)用相應(yīng)函數(shù)進(jìn)行使用

模塊導(dǎo)入的方法:

從模塊中導(dǎo)入一個(gè)指定的部分

把一個(gè)模塊的所有內(nèi)容全都導(dǎo)入

「Python3基礎(chǔ)」函數(shù)

表示一個(gè)功能,函數(shù)定義著是提供功能的人,函數(shù)調(diào)用者是使用功能的人。

print:打印功能,將括號(hào)中的內(nèi)容,顯示到終端。

將括號(hào)中的內(nèi)容顯示在控制臺(tái).

input:輸入功能,從終端中獲取輸入的信息,存到程序變量當(dāng)中

作用:將用戶輸入的內(nèi)容賦值給變量

第一個(gè)字符必須是字母表中字母或下劃線 _ 。

標(biāo)識(shí)符的其他的部分由字母、數(shù)字和下劃線組成。

標(biāo)識(shí)符對(duì)大小寫敏感。

python最具特色的就是使用縮進(jìn)來表示代碼塊,不需要使用大括號(hào) {} 。

縮進(jìn)的空格數(shù)是可變的,但是同一個(gè)代碼塊的語句必須包含相同的縮進(jìn)空格數(shù)。實(shí)例如下:

python中round函數(shù)的用法

round函數(shù)python:

這個(gè)函數(shù)相當(dāng)于調(diào)去里面的一個(gè)函數(shù),有一個(gè)數(shù)組,從中里面調(diào)取一個(gè)數(shù)據(jù)。簡單的說,round是使用四舍五入對(duì)小數(shù)進(jìn)行位數(shù)控制的函數(shù),round(a,b),a參數(shù)是小數(shù),b是小數(shù)點(diǎn)后保留的位數(shù)。實(shí)際使用需要考慮的python2和python3版本的差異與小數(shù)精度的問題。

ound函數(shù)的使用用法

根據(jù)Excel的幫助得知,round函數(shù)就是返回一個(gè)數(shù)值,該數(shù)值是按照指定的小數(shù)位數(shù)進(jìn)行四舍五入運(yùn)算的結(jié)果。

round函數(shù)的語法是:ROUND(number,num_digits),即:Round(數(shù)值,保留的小數(shù)位數(shù))

Number:需要進(jìn)行四舍五入的數(shù)字。

Num_digits:指定的位數(shù),按此位數(shù)進(jìn)行四舍五入。

其中,如果num_digits大于0,則四舍五入到指定的小數(shù)位。

如果num_digits等于0,則四舍五入到最接近的整數(shù)。

如果num_digits小于0,則在小數(shù)點(diǎn)左側(cè)進(jìn)行四舍五入。

標(biāo)題名稱:python數(shù)值函數(shù),python函數(shù)介紹
網(wǎng)頁路徑:http://chinadenli.net/article28/heisjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、App開發(fā)云服務(wù)器、網(wǎng)站內(nèi)鏈、服務(wù)器托管、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司