成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Python基礎(chǔ)(七)

1 模塊函數(shù)

1.1 模塊函數(shù)

模塊函數(shù)指的是模塊中的函數(shù),模塊函數(shù)有三種:

我們擁有十多年網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站建設(shè)經(jīng)驗(yàn),從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。為企業(yè)提供做網(wǎng)站、成都網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信小程序定制開(kāi)發(fā)成都手機(jī)網(wǎng)站制作、H5響應(yīng)式網(wǎng)站、等業(yè)務(wù)。無(wú)論您有什么樣的網(wǎng)站設(shè)計(jì)或者設(shè)計(jì)方案要求,我們都將富于創(chuàng)造性的提供專(zhuān)業(yè)設(shè)計(jì)服務(wù)并滿足您的需求。

  • 內(nèi)置模塊:又叫標(biāo)準(zhǔn)庫(kù).
  • 第三方開(kāi)源模塊:可以通過(guò)包管理工具進(jìn)行安裝.
  • 自定義模塊.

1.2 導(dǎo)入

導(dǎo)入方法主要有三種:

1.2.1 import moudle

import math
math.e

Python基礎(chǔ)(七)

1.2.2 import module as alias

alias表示別名.
Python基礎(chǔ)(七)

1.2.3 from module import function

從模塊導(dǎo)入函數(shù).
Python基礎(chǔ)(七)

1.2.4 from module import function as alias

與上一種類(lèi)似,加上了別名.
Python基礎(chǔ)(七)

2 自定義函數(shù)

2.1 定義函數(shù)

使用關(guān)鍵字def定義:

def func():
    print(1)

2.2 設(shè)置docstring

docstring就是注釋,描述了函數(shù)的功能,使用三個(gè)單引號(hào)或三個(gè)雙引號(hào),可以用help()獲取函數(shù)的docstring.

def func():
    '''
    func docstring
    '''
    print(1)
help(func)

Python基礎(chǔ)(七)

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

直接使用函數(shù)名即可,需要的話要加上參數(shù).

func()
func(22)

2.4 返回值

返回值在return里指定,可以返回多個(gè)值:

def f():
    return 1,2,3,4

相當(dāng)于返回一個(gè)元組.若函數(shù)沒(méi)有return,則返回None.

2.5 形參

2.5.1 形參分類(lèi)

形參就是函數(shù)定義時(shí)的參數(shù)列表里面的參數(shù),可以分為:

  • 可選形參:給出默認(rèn)值的形參.
  • 必選形參:沒(méi)有給出默認(rèn)的形參.
def f(x1,x2,x3=3)

其中x1,x2必選形參,x3可選形參.

2.5.2 * 與 **

帶一個(gè) 的形參表示該形參類(lèi)型為元組,帶兩個(gè) 的形參表示該參數(shù)類(lèi)型為字典.

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

出現(xiàn)在*后的參數(shù).

def f(x1,*x2,x3,x4)

x3與x4就是命名關(guān)鍵字參數(shù),在調(diào)用時(shí)必須顯式使用參數(shù)名.

2.6 實(shí)參

python實(shí)參可以分為位置實(shí)參與關(guān)鍵字實(shí)參.

2.6.1 位置參數(shù)

位置參數(shù)就是沒(méi)有指定形參名字的實(shí)參,每個(gè)實(shí)參基于順序關(guān)聯(lián)到一個(gè)形參.

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

關(guān)鍵字參數(shù)就是指定了形參名字的實(shí)參,用鍵值對(duì)的形式指定,可以不按順序調(diào)用.

def f(x1,x2,x3):
    print(x1,x2,x3)
f(1,2,3)
f(x3=999,x1=888,x2=999999)

Python基礎(chǔ)(七)

2.7 變量可見(jiàn)性

python變量的可見(jiàn)性有三種:全局變量,局部變量,非局部變量.

2.7.1 局部變量

在函數(shù)內(nèi)的變量為局部變量,因此,以下代碼會(huì)輸出9:

x1 = 8
def f():
    x1 = 9
    print(x1)
f()

如果在x1之前輸出呢?
Python基礎(chǔ)(七)
直接提示沒(méi)有定義x1,就是全局變量x1在函數(shù)內(nèi)不可見(jiàn),但筆者不死心,一定要運(yùn)行一下.
Python基礎(chǔ)(七)
它說(shuō)局部變量x1沒(méi)有被賦值,注意,是局部變量,因此,這也證明了全局變量在函數(shù)內(nèi)不可見(jiàn).

2.7.2 全局變量

若要使全局變量在函數(shù)內(nèi)可見(jiàn),使用global:

x1 = 8
def f():
    global x1
    print(x1)
    x1 = 9
    print(x1)
f()

Python基礎(chǔ)(七)
global x1表示x1是一個(gè)全局變量,注意global x1需要單獨(dú)占一行.

2.7.3 非局部變量

用于嵌套函數(shù)中,使用nonlocal聲明,表示內(nèi)層函數(shù)的這個(gè)變量是外層函數(shù)的.

x1 = 8
def f():
    x1 = 9
    print(x1)
    def f1():
        nonlocal x1
        print(x1)
        x1 = 10
        print(x1)
    return f1
f()
f()()

Python基礎(chǔ)(七)
第一個(gè)與第二個(gè)9都是f()中的print()輸出的,第三個(gè)9是f1()中的print()輸出的.

2.8 參數(shù)傳遞規(guī)則

當(dāng)實(shí)參傳遞給形參時(shí),有兩種傳遞規(guī)則,一是值傳遞,而是地址傳遞.

2.8.1 值傳遞

當(dāng)實(shí)參為不可變對(duì)象時(shí),采用值傳遞規(guī)則,常見(jiàn)的不可變對(duì)象類(lèi)型包括int,float,str,bool,tuple.

def f(x):
    x = 1
    print(x)
x = 3
print('-------int------')
f(x)
print(x)
print()

x = 'string'
print('-------str------')
f(x)
print(x)
print()

x = (3,4,5)
print('-------tuple------')
f(x)
print(x)
print()

x = 5.799
print('-------float------')
f(x)
print(x)
print()

Python基礎(chǔ)(七)

2.8.2 地址傳遞

參數(shù)為可變對(duì)象時(shí),采用地址傳遞規(guī)則,修改形參的值會(huì)同時(shí)改變實(shí)參的值.常見(jiàn)的可變對(duì)象類(lèi)型包括list,set,dict.

def f(x):
    if type(x) == list:
        x = x.reverse()
    elif isinstance(x,set):
        x.add(8)
    else:
        x['0'] = 3
x = [1,2,3]
print('-------list------')
print(x)
f(x)
print(x)
print()

x = {4,5,6}
print('-------set------')
print(x)
f(x)
print(x)
print()

x = {'a':1,'b':2}
print('-------dict------')
print(x)
f(x)
print(x)
print()

Python基礎(chǔ)(七)

2.9 lambda函數(shù)

lambda是一種特殊的自定義函數(shù),使用關(guān)鍵字lambda進(jìn)行定義,是一種匿名函數(shù),函數(shù)體一般很短.

2.9.1 定義

以關(guān)鍵字lambda開(kāi)頭,后面是參數(shù)列表,參數(shù)列表結(jié)束后加一個(gè)冒號(hào),后面是返回值.

y = lambda x:x*3
z = lambda x,y:x*y

2.9.2 調(diào)用

調(diào)用可以通過(guò)"函數(shù)名"調(diào)用,或者配合其他函數(shù)使用.
Python基礎(chǔ)(七)

分享文章:Python基礎(chǔ)(七)
URL網(wǎng)址:http://jinyejixie.com/article22/jjpjcc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)小程序開(kāi)發(fā)、網(wǎng)站設(shè)計(jì)自適應(yīng)網(wǎng)站、定制網(wǎng)站云服務(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)站
临城县| 泸溪县| 随州市| 福州市| 保德县| 四会市| 新丰县| 灵武市| 焉耆| 扎囊县| 响水县| 怀化市| 万山特区| 丰台区| 庄河市| 城步| 扬中市| 平潭县| 威宁| 尉犁县| 万山特区| 桃江县| 黄浦区| 理塘县| 南京市| 扎囊县| 松潘县| 抚宁县| 乳山市| 河间市| 武鸣县| 江都市| 长子县| 贵港市| 太和县| 宁都县| 田东县| 虞城县| 乌什县| 太谷县| 上虞市|