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

python語(yǔ)言數(shù)學(xué)函數(shù) python語(yǔ)言函數(shù)大全

Python其實(shí)很簡(jiǎn)單 第十二章 函數(shù)與變量的作用域

在前面已經(jīng)多次提到函數(shù)這個(gè)概念,之所以沒(méi)有解釋什么是函數(shù),是因?yàn)槌绦蛑械暮瘮?shù)和數(shù)學(xué)中的函數(shù)差不多,如input()、range()等都是函數(shù),這些都是Python的標(biāo)準(zhǔn)函數(shù),直接使用就可以了。根據(jù)需要,用戶也可以自定義函數(shù)。

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、天峨網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場(chǎng)景定制成都做商城網(wǎng)站、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為天峨等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

12.1 函數(shù)

函數(shù)的結(jié)構(gòu):

def 函數(shù)名(參數(shù)):

函數(shù)體

return 返回值

例如:數(shù)學(xué)中的函數(shù)f(x)=2x+5在Python中可以定義如下:

def f(x):

y=2*x+5

return(y)

如果x取值為3,可以使用如下語(yǔ)句調(diào)用函數(shù):

f(3)

下面給出完整的程序代碼:

def f(x):

y=2*x+5

return(y)

res=f(3)

print(res)

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

如上例中的x是函數(shù)f(x)的參數(shù),有時(shí)也被稱為形式參數(shù)(簡(jiǎn)稱形參),在函數(shù)被調(diào)用時(shí),x被具體的值3替換y就是函數(shù)的返回值,這個(gè)值3也被稱為實(shí)際參數(shù)(簡(jiǎn)稱實(shí)參)。

上例中的y是函數(shù)f(x)的返回值。并不是所有的函數(shù)都有參數(shù)和返回值。如下面的函數(shù):

def func():

print('此為無(wú)參數(shù)傳遞、無(wú)返回值的函數(shù)')

func()

輸出結(jié)果:此為無(wú)參數(shù)傳遞、無(wú)返回值的函數(shù)

可以看出,該函數(shù)func()無(wú)參數(shù),故調(diào)用時(shí)不用賦給參數(shù)值。

函數(shù)也可以有多個(gè)參數(shù),如f(x,y)=x2+y2,可用Python語(yǔ)言定義如下:

def f(x,y):

z=x**2+y**2

return z

print(f(2,3)) #調(diào)用函數(shù)f(x,y)

輸出結(jié)果:13

也可以通過(guò)直接給參數(shù)列表中的參數(shù)賦值的方法,為參數(shù)添加默認(rèn)值,如果用戶賦予參數(shù)值,則按照用戶賦值執(zhí)行,否則使用默認(rèn)值。例如:

def f(x,y=3):

z=x**2+y**2

return z

若調(diào)用時(shí)參數(shù)列表為(2,1),即x賦值為2,y賦值為1:

print(f(2,1))

輸出結(jié)果為:5

若調(diào)用時(shí)參數(shù)列表為(2),即x賦值為2,y賦值省缺,則y使用默認(rèn)值:

print(f(2))

輸出結(jié)果為:13

回調(diào)函數(shù),又稱函數(shù)回調(diào),是將函數(shù)作為另一函數(shù)的參數(shù)。

例如:

def func(fun,m,n):

fun(m,n)

def f_add(m,n):

print('m+n=',m+n)

def f_mult(m,n):

print('m*n=',m*n)

func(f_add,2,3)

func(f_mult,2,3)

輸出結(jié)果:

m+n= 5

m*n= 6

在f_add(m,n)和f_mult(m,n)被定義前,func(fun,m,n)中的fun(m,n)就已經(jīng)調(diào)用了這兩個(gè)函數(shù),即“先調(diào)用后定義”,這也是回調(diào)函數(shù)的特點(diǎn)。

如果無(wú)法預(yù)知參數(shù)的個(gè)數(shù),可以在參數(shù)前面加上*號(hào),這種參數(shù)實(shí)際上對(duì)應(yīng)元組類型。譬如,參會(huì)的人數(shù)事先不能確定,只能根據(jù)與會(huì)人員名單輸入:

def func(*names):

print('今天與會(huì)人員有:')

for name in names:

print(name)

func('張小兵','陳曉梅','李大海','王長(zhǎng)江')

運(yùn)行后,輸出結(jié)果為:

今天與會(huì)人員有:

張小兵

陳曉梅

李大海

王長(zhǎng)江

參數(shù)為字典類型,需要在參數(shù)前面加上**號(hào)。

def func(**kwargs):

for i in kwargs:

print(i,kwargs[i])

func(a='a1',b='b1',c='c1')

輸出結(jié)果為:

a a1

b b1

c c1

一個(gè)有趣的實(shí)例:

def func(x,y,z,*args,**kwargs):

print(x,y,z)

print(args)

print(kwargs)

func('a','b','c','Python','is easy',py='python',j='java',ph='php')

輸出結(jié)果:

a b c # 前三個(gè)實(shí)參賦給前三個(gè)形參

('Python', 'is easy') # *args接收元組數(shù)據(jù)

{'py': 'python', 'j': 'java', 'ph': 'php'} # **kwargs接收字典數(shù)據(jù)

12.2 變量的作用域

變量的作用域即變量的有效范圍,可分為全局變量和局部變量。

局部變量

在函數(shù)中定義的變量就是局部變量,局部變量的作用域僅限于函數(shù)內(nèi)部使用。

全局變量

在主程序中定義的變量就是全局變量,但在函數(shù)中用關(guān)鍵字global修飾的變量也可以當(dāng)做全局變量來(lái)使用。

全局變量的作用域是整個(gè)程序,也就是說(shuō),全局變量可以在整個(gè)程序中可以訪問(wèn)。

下面通過(guò)實(shí)例去討論:

程序1:

a=1 # a為全局變量

def a_add():

print('a的初值:',a) # 在函數(shù)中讀取a的值

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

a+=1 # 主程序語(yǔ)句,a增加1

print('a現(xiàn)在的值是:',a) # 主程序語(yǔ)句,讀取a的值

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

a的初值: 1

a現(xiàn)在的值是: 2

這個(gè)結(jié)果和我們想象的一樣,全局變量a既可以在主程序中讀取,也可以在子程序(函數(shù))中讀取。

程序2:

a=1

def a_add():

a+=1

print('a的初值:',a)

a_add()

print('a現(xiàn)在的值是:',a)

運(yùn)行程序1時(shí)出現(xiàn)如下錯(cuò)誤提示:

UnboundLocalError: local variable 'a' referenced before assignment

意思是:局部變量'a'在賦值之前被引用。

從語(yǔ)法上來(lái)講,該程序沒(méi)有錯(cuò)誤。首先定義了一個(gè)全局變量a并賦值為1,又定義了一個(gè)函數(shù)a_add(),函數(shù)內(nèi)的語(yǔ)句a+=1就是出錯(cuò)的根源,雖然我們的初衷是想讓全局變量a的值增加1,但從錯(cuò)誤提示看,這個(gè)語(yǔ)句中的a并不是全局變量,而是局部變量。看來(lái),在函數(shù)中讀取全局變量的值是沒(méi)有問(wèn)題的(在程序1中已經(jīng)得到了驗(yàn)證),但要在函數(shù)中改變?nèi)肿兞康闹凳遣恍械模ㄔ诔绦?的錯(cuò)誤提示a+=1中的a 是局部變量,而非全局變量)。

怎樣解決這個(gè)問(wèn)題?

程序3:

a=1

def a_add(x):

x+=1

return x

print('a的初值:',a)

a=a_add(a)

print('a現(xiàn)在的值是:',a)

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

a的初值: 1

a現(xiàn)在的值是: 2

結(jié)果的確是正確的,但在函數(shù)a_add(x)中沒(méi)有調(diào)用變量a(沒(méi)有出現(xiàn)變量a)。

程序4:

a=1

def a_add(a):

a+=1

return a

print('a的初值:',a)

a=a_add(a)

print('a現(xiàn)在的值是:',a)

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

a的初值: 1

a現(xiàn)在的值是: 2

對(duì)比程序4和程序3不難發(fā)現(xiàn),其實(shí)程序4只是簡(jiǎn)單的把函數(shù)的參數(shù)x變成了a,這個(gè)a的實(shí)質(zhì)和程序3中的x還是一樣的。這進(jìn)一步證實(shí),函數(shù)中的a是局部變量,與主程序的全局變量a有著本質(zhì)的區(qū)別。

程序5:

a=1

def a_add():

global a

a+=1

print('a的初值:',a)

a_add()

print('a現(xiàn)在的值是:',a)

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

a的初值: 1

a現(xiàn)在的值是: 2

程序5和程序2相比較,僅僅是在函數(shù)中添加了一個(gè)定義“global a”,此時(shí)的局部變量a就可以當(dāng)做全局變量使用,由于它和全局變量a同名,自然也就不用區(qū)分a究竟是全局變量還是局部變量了,在主程序和該函數(shù)內(nèi)都可以訪問(wèn)、修改變量a的值了。

雖然使用global可使變量使用起來(lái)非常方便,但也容易引起混淆,故在使用過(guò)程中還是謹(jǐn)慎為好。

12.3 函數(shù)的遞歸與嵌套

遞歸,就是函數(shù)調(diào)用它自身。遞歸必須設(shè)置停止條件,否則函數(shù)將無(wú)法終止,形成死循環(huán)。

以計(jì)算階乘為例:

def func(n):

if n==1:

return 1

else:

return n*func(n-1) #func( )調(diào)用func( )

print(func(5))

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

嵌套,指在函數(shù)中調(diào)用另外的函數(shù)。這是程序中常見(jiàn)的一種結(jié)構(gòu),在此不再贅述。

匿名函數(shù)

Python中可以在參數(shù)前加上關(guān)鍵字lambda定義一個(gè)匿名函數(shù),這樣的函數(shù)一般都屬于“一次性”的。

例如:

程序1:這是一個(gè)常規(guī)的函數(shù)定義和調(diào)用。

def f_add(x,y):

return x+y

print(f_add(2,3))

輸出結(jié)果:5

程序2:使用lambda定義匿名函數(shù)。

f_add=lambda x,y:x+y

print(f_add(2,3))

輸出結(jié)果:5

從上面的代碼可以看出,使用lambda僅僅減少了一行代碼。f_add=lambda x,y:x+y中的f_add不是變量名,而是函數(shù)名。程序1和程序2的print( )語(yǔ)句中的參數(shù)都是一樣的——調(diào)用函數(shù)f_add( )。所以,匿名函數(shù)并沒(méi)有太多的優(yōu)點(diǎn)。

2 如何用Python進(jìn)行數(shù)據(jù)計(jì)算

numpy計(jì)算平均數(shù) 標(biāo)準(zhǔn)差 相關(guān)系數(shù)等基本知識(shí)

NumPy 是python 語(yǔ)言的一個(gè)第三方庫(kù),其支持大量高維度數(shù)組與矩陣運(yùn)算。此外,NumPy 也針對(duì)數(shù)組運(yùn)算提供大量的數(shù)學(xué)函數(shù)。

#導(dǎo)入Numpy庫(kù),并命名為np

import numpy as np

#創(chuàng)建一維數(shù)組

a = np.array([1, 2, 3])

# NumPy可以很方便地創(chuàng)建連續(xù)數(shù)組,比如我使用arange或linspace函數(shù)進(jìn)行創(chuàng)建:

b = np.arange(1,5,1) // 返回一個(gè)有終點(diǎn)和起點(diǎn)、固定步長(zhǎng)的排列,如起點(diǎn)是1,終點(diǎn)是4,步長(zhǎng)為1,即【1,2,3,4】,

c = np.linspace(1,9,5) 返回一個(gè)有終點(diǎn)和起點(diǎn)、元素個(gè)數(shù)的的排列,如起點(diǎn)是1,終點(diǎn)是9,元素個(gè)數(shù)為5,即【1,3,5,7,9】

#通過(guò)NumPy可以自由地創(chuàng)建等差數(shù)組,同時(shí)也可以進(jìn)行加、減、乘、除、求n次方和取余數(shù)。

求和:np.sum(a)

求取平均值:np.mean(a)

求取中位數(shù):np.median(a)

求取加權(quán)平均數(shù):np.average(a)

求取方差:var() np.var(a)

求取最小值:np.amin(a)

求取最大值:np.amax(a)

將兩個(gè)數(shù)相加:np.add(x1, x2)

將兩個(gè)數(shù)相減:np.subtract(x1, x2)

將兩個(gè)數(shù)相乘:np.multiply(x1, x2)

將兩個(gè)數(shù)相除:np.divide(x1, x2)

立方:np.power(x1, x2)

除余:np.remainder(x1, x2)

相關(guān)系數(shù)計(jì)算:np.corrcoef(a1, a2) (a1、a2都是矩陣)

python中函數(shù)的作用

Python 函數(shù)定義以及參數(shù)傳遞

1.函數(shù)定義

#形如def func(args...):

doSomething123

以關(guān)鍵字def 開(kāi)頭,后面是函數(shù)名和參數(shù)下面是函數(shù)處理過(guò)程。

舉例:

def add( a, b ):

return a+b12

參數(shù)可以設(shè)定默認(rèn)值,如:

def add( a, b=10 ): #注意:默認(rèn)值參數(shù)只會(huì)運(yùn)算一次

return a+b12

默認(rèn)值參數(shù)只會(huì)運(yùn)算一次是什么意思?

def func( a, b=[] ): #b的默認(rèn)值指向一個(gè)空的列表,每次不帶默認(rèn)值都會(huì)指向這塊內(nèi)存

b.append(a) return b

print(func(1))#向默認(rèn)的空列表里加入元素1 ,默認(rèn)列表里已經(jīng)是[1]print(func(2))#向默認(rèn)的列表里加入元素2,默認(rèn)列表里已經(jīng)是[1,2]print(func(3,[]))#向b指向的空列表里加入元素1 ,默認(rèn)列表里還是[1,2]print(func(4))#向默認(rèn)的列表里加入元素4,默認(rèn)列表里已經(jīng)是[1,2,4]'''

結(jié)果:

[1]

[1, 2]

[3]

[1, 2, 4]

'''12345678910111213141516

這下明白為什么默認(rèn)參數(shù)只計(jì)算一次了吧,函數(shù)參數(shù)不傳遞時(shí)默認(rèn)值總是指向固定的內(nèi)存空間,就是第一次計(jì)算的空間。

2.參數(shù)傳遞

def func(a, b):

print('a=%d, b=%d' % (a,b) )12

在使用函數(shù)時(shí)可以如下方式,結(jié)果都是相同的

func(10,20) #不使用參數(shù)名,需要按參數(shù)順序傳遞func(a=10,b=20) #使用參數(shù)名可以不按順序傳遞func(b=20,a=10)#結(jié)果:a=10, b=20a=10, b=20a=10, b=201234567

如果函數(shù)定義形式如下方式:

def func(*args): #這種定義會(huì)把傳遞的參數(shù)包成元組

print(args,type(args))

func(10,20)#結(jié)果:#(10, 20) class 'tuple'1234567

舉一個(gè)和上述過(guò)程相反的例子:

def func(a,b):

print('a=%d, b=%d' % (a,b) )

a = (10, 20)

func(*a) #在調(diào)用函數(shù)使用`*`則會(huì)把元組解包成單個(gè)變量按順序傳入函數(shù)#結(jié)果:a=10, b=20123456

總結(jié):*號(hào)在定義函數(shù)參數(shù)時(shí),傳入函數(shù)的參數(shù)會(huì)轉(zhuǎn)換成元組,如果 *號(hào)在調(diào)用時(shí)則會(huì)把元組解包成單個(gè)元素。

另一種定義:

def func(**kw):#使用**定義參數(shù)會(huì)把傳入?yún)?shù)包裝成字典dict

print(kw, type(kw) )

func(a=10,b=20)#這種函數(shù)在使用時(shí)必須指定參數(shù)值,使用key=value這種形式#結(jié)果:{'b': 20, 'a': 10} class 'dict'12345

相反的例子:

def func(a,b):

print('a=%d, b=%d' % (a,b) )

d = {'a':10, 'b':20 }

func(**d) #在調(diào)用時(shí)使用**會(huì)把字典解包成變量傳入函數(shù)。12345

def func(*args, **kw):#這種形式的定義代表可以接受任意類型的參數(shù)

print(args,kw )12

總結(jié):**號(hào)在定義函數(shù)參數(shù)時(shí),傳入函數(shù)的參數(shù)會(huì)轉(zhuǎn)換成字典,如果 **號(hào)在調(diào)用時(shí)則會(huì)把字典解包成單個(gè)元素。

lambda表達(dá)式

lambda表達(dá)式就是一種簡(jiǎn)單的函數(shù)

形如 f = lambda 參數(shù)1,參數(shù)2: 返回的計(jì)算值

例如:

add = lambda x,y: x+y

print(add(1,2))'''

結(jié)果:3

'''12345

python怎么做數(shù)學(xué)函數(shù)題

【相關(guān)學(xué)習(xí)推薦:python教程】

python做數(shù)學(xué)函數(shù)題的方法:

1、打開(kāi)CMD命令行以后我們先來(lái)看一個(gè)求平方的函數(shù),如下圖所示,用pow即可計(jì)算某個(gè)數(shù)的幾次方

2、接下來(lái)我們可以運(yùn)用abs函數(shù)來(lái)求某一個(gè)數(shù)的絕對(duì)值,如下圖所示

3、在遇到小數(shù)的時(shí)候,我們經(jīng)常需要舍棄小數(shù)的部分直接用整數(shù),那么就可以用floor函數(shù)了,但是直接用的話是報(bào)錯(cuò)的,如下圖所示

4、這個(gè)時(shí)候我們需要導(dǎo)入math模塊,因?yàn)閒loor函數(shù)在math模塊中,如下圖所示

5、接下來(lái)我們還會(huì)用到math函數(shù)中的開(kāi)平方根的函數(shù)sqrt,如下圖所示

6、最后我們?cè)趹?yīng)用數(shù)學(xué)函數(shù)的時(shí)候可以直接將起賦值給某個(gè)變量,然后直接調(diào)用該變量即可,如下圖所示

Python--math庫(kù)

Python math 庫(kù)提供許多對(duì)浮點(diǎn)數(shù)的數(shù)學(xué)運(yùn)算函數(shù),math模塊不支持復(fù)數(shù)運(yùn)算,若需計(jì)算復(fù)數(shù),可使用cmath模塊(本文不贅述)。

使用dir函數(shù),查看math庫(kù)中包含的所有內(nèi)容:

1) math.pi????# 圓周率π

2) math.e????#自然對(duì)數(shù)底數(shù)

3) math.inf? ? #正無(wú)窮大∞,-math.inf? ? #負(fù)無(wú)窮大-∞

4) math.nan? ? #非浮點(diǎn)數(shù)標(biāo)記,NaN(not a number)

1) math.fabs(x)? ? #表示X值的絕對(duì)值

2) math.fmod(x,y)? ? #表示x/y的余數(shù),結(jié)果為浮點(diǎn)數(shù)

3) math.fsum([x,y,z])? ? #對(duì)括號(hào)內(nèi)每個(gè)元素求和,其值為浮點(diǎn)數(shù)

4) math.ceil(x)? ? #向上取整,返回不小于x的最小整數(shù)

5)math.floor(x)? ? #向下取整,返回不大于x的最大整數(shù)

6) math.factorial(x)? ? #表示X的階乘,其中X值必須為整型,否則報(bào)錯(cuò)

7) math.gcd(a,b)? ? #表示a,b的最大公約數(shù)

8)? math.frexp(x)? ? ? #x = i *2^j,返回(i,j)

9) math.ldexp(x,i)? ? #返回x*2^i的運(yùn)算值,為math.frexp(x)函數(shù)的反運(yùn)算

10) math.modf(x)? ? #表示x的小數(shù)和整數(shù)部分

11) math.trunc(x)? ? #表示x值的整數(shù)部分

12) math.copysign(x,y)? ? #表示用數(shù)值y的正負(fù)號(hào),替換x值的正負(fù)號(hào)

13) math.isclose(a,b,rel_tol =x,abs_tol = y)? ? #表示a,b的相似性,真值返回True,否則False;rel_tol是相對(duì)公差:表示a,b之間允許的最大差值,abs_tol是最小絕對(duì)公差,對(duì)比較接近于0有用,abs_tol必須至少為0。

14) math.isfinite(x)? ? #表示當(dāng)x不為無(wú)窮大時(shí),返回True,否則返回False

15) math.isinf(x)? ? #當(dāng)x為±∞時(shí),返回True,否則返回False

16) math.isnan(x)? ? #當(dāng)x是NaN,返回True,否則返回False

1) math.pow(x,y)? ? #表示x的y次冪

2) math.exp(x)? ? #表示e的x次冪

3) math.expm1(x)? ? #表示e的x次冪減1

4) math.sqrt(x)? ? #表示x的平方根

5) math.log(x,base)? ? #表示x的對(duì)數(shù)值,僅輸入x值時(shí),表示ln(x)函數(shù)

6) math.log1p(x)? ? #表示1+x的自然對(duì)數(shù)值

7) math.log2(x)? ? #表示以2為底的x對(duì)數(shù)值

8) math.log10(x)? ? #表示以10為底的x的對(duì)數(shù)值

1) math.degrees(x)? ? #表示弧度值轉(zhuǎn)角度值

2) math.radians(x)? ? #表示角度值轉(zhuǎn)弧度值

3) math.hypot(x,y)? ? #表示(x,y)坐標(biāo)到原點(diǎn)(0,0)的距離

4) math.sin(x)? ? #表示x的正弦函數(shù)值

5) math.cos(x)? ? #表示x的余弦函數(shù)值

6) math.tan(x)? ? #表示x的正切函數(shù)值

7)math.asin(x)? ? #表示x的反正弦函數(shù)值

8)?math.acos(x)? ? #表示x的反余弦函數(shù)值

9)?math.atan(x)? ? #表示x的反正切函數(shù)值

10) math.atan2(y,x)? ? #表示y/x的反正切函數(shù)值

11) math.sinh(x)? ? #表示x的雙曲正弦函數(shù)值

12) math.cosh(x)? ? #表示x的雙曲余弦函數(shù)值

13) math.tanh(x)? ? #表示x的雙曲正切函數(shù)值

14) math.asinh(x)? ? #表示x的反雙曲正弦函數(shù)值

15) math.acosh(x)? ? #表示x的反雙曲余弦函數(shù)值

16) math.atanh(x)? ? #表示x的反雙曲正切函數(shù)值

1)math.erf(x)? ? #高斯誤差函數(shù)

2) math.erfc(x)? ? #余補(bǔ)高斯誤差函數(shù)

3) math.gamma(x)? ? #伽馬函數(shù)(歐拉第二積分函數(shù))

4) math.lgamma(x)? ? #伽馬函數(shù)的自然對(duì)數(shù)

python的lambda函數(shù)是什么?

Python——Lambda表達(dá)式是一個(gè)匿名函數(shù),Lambda 表達(dá)式基于數(shù)學(xué)中的lambda演算得名,直接對(duì)應(yīng)于其中的 lambda 抽象,是一個(gè)匿名函數(shù),即沒(méi)有函數(shù)名的函數(shù)。

Python由荷蘭數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會(huì)的Guido van Rossum 于1990 年代初設(shè)計(jì),作為一門(mén)叫做ABC語(yǔ)言的替代品。Python提供了高效的高級(jí)數(shù)據(jù)結(jié)構(gòu),還能簡(jiǎn)單有效地面向?qū)ο缶幊獭?/p>

Python語(yǔ)法和動(dòng)態(tài)類型,以及解釋型語(yǔ)言的本質(zhì),使它成為多數(shù)平臺(tái)上寫(xiě)腳本和快速開(kāi)發(fā)應(yīng)用的編程語(yǔ)言,隨著版本的不斷更新和語(yǔ)言新功能的添加,逐漸被用于獨(dú)立的、大型項(xiàng)目的開(kāi)發(fā)。

Python解釋器易于擴(kuò)展,可以使用C或C++(或者其他可以通過(guò)C調(diào)用的語(yǔ)言)擴(kuò)展新的功能和數(shù)據(jù)類型。Python 也可用于可定制化軟件中的擴(kuò)展程序語(yǔ)言。Python豐富的標(biāo)準(zhǔn)庫(kù),提供了適用于各個(gè)主要系統(tǒng)平臺(tái)的源碼或機(jī)器碼。

擴(kuò)展資料:

python的發(fā)展歷程:

自從20世紀(jì)90年代初Python語(yǔ)言誕生至今,它已被逐漸廣泛應(yīng)用于系統(tǒng)管理任務(wù)的處理和Web編程。

Python的創(chuàng)始人為荷蘭人吉多·范羅蘇姆。1989年圣誕節(jié)期間,在阿姆斯特丹,Guido為了打發(fā)圣誕節(jié)的無(wú)趣,決心開(kāi)發(fā)一個(gè)新的腳本解釋程序,作為ABC語(yǔ)言的一種繼承。之所以選中Python(作為該編程語(yǔ)言的名字,是取自英國(guó)20世紀(jì)70年代首播的電視喜劇《蒙提·派森的飛行馬戲團(tuán)》。

ABC是由Guido參加設(shè)計(jì)的一種教學(xué)語(yǔ)言。就Guido本人看來(lái),ABC這種語(yǔ)言非常優(yōu)美和強(qiáng)大,是專門(mén)為非專業(yè)程序員設(shè)計(jì)的。但是ABC語(yǔ)言并沒(méi)有成功,究其原因,Guido認(rèn)為是其非開(kāi)放造成的。Guido決心在Python中避免這一錯(cuò)誤。同時(shí),他還想實(shí)現(xiàn)在ABC中閃現(xiàn)過(guò)但未曾實(shí)現(xiàn)的東西。

就這樣,Python在Guido手中誕生了。可以說(shuō),Python是從ABC發(fā)展起來(lái),主要受到了Modula-3(另一種相當(dāng)優(yōu)美且強(qiáng)大的語(yǔ)言,為小型團(tuán)體所設(shè)計(jì)的)的影響。并且結(jié)合了Unix shell和C的習(xí)慣。

分享文章:python語(yǔ)言數(shù)學(xué)函數(shù) python語(yǔ)言函數(shù)大全
文章轉(zhuǎn)載:http://chinadenli.net/article46/hpeoeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃網(wǎng)頁(yè)設(shè)計(jì)公司網(wǎng)站設(shè)計(jì)網(wǎng)站設(shè)計(jì)公司微信小程序云服務(wù)器

廣告

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

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)