day8函數(shù)的基礎(chǔ)

使用函數(shù)

函數(shù)是提高代碼的復(fù)用度
函數(shù)就是對(duì)實(shí)現(xiàn)某一特異功能的代碼封裝
函數(shù)的分類:內(nèi)置函數(shù)和自定義函數(shù)
內(nèi)置函數(shù):是系統(tǒng)已經(jīng)寫(xiě)好的站蝠,可以直接使用的函數(shù)孙蒙。列如print函數(shù) ,input函數(shù)拉队,sum函數(shù) 众眨,len函數(shù)等等
自定義函數(shù):程序員自己去創(chuàng)建的函數(shù)
函數(shù)的定義(聲明):
固定格式
def 函數(shù)名(參數(shù)列表):
  函數(shù)體

說(shuō)明:

def:在Python中聲明函數(shù)的關(guān)鍵字
函數(shù)名:標(biāo)識(shí)符握牧,不能是關(guān)鍵字;pep8(所有字母小寫(xiě)娩梨,多個(gè)單詞用下劃線隔開(kāi))沿腰,見(jiàn)名知意(看到函數(shù)大概要做的函數(shù)的功能)

():固定格式,并且必須寫(xiě)狈定。

參數(shù)列表:參數(shù)名矫俺,參數(shù)名2,參數(shù)名3掸冤,。友雳。參數(shù)可以有多個(gè)稿湿,可以沒(méi)有。這的參數(shù)叫形參
參數(shù)是用來(lái)從函數(shù)的外面押赊,向函數(shù)里面?zhèn)髦涤玫慕忍伲▽?shù)據(jù)從函數(shù)外面?zhèn)鬟f到函數(shù)的里面)
函數(shù)體:實(shí)現(xiàn)函數(shù)功能的代碼段。函數(shù)體可能會(huì)包含return語(yǔ)句

初學(xué)者聲明函數(shù)的過(guò)程:

第一步:確定函數(shù)的功能
第二步:根據(jù)功能確定函數(shù)名
第三步:確定參數(shù)(確定有沒(méi)有流礁,確定有幾個(gè))
                看實(shí)現(xiàn)函數(shù)的功能涕俗,需不需要從函數(shù)外面的傳遞數(shù)據(jù)進(jìn)來(lái)。需要幾個(gè)就定義幾個(gè)參數(shù)
第四步:實(shí)現(xiàn)函數(shù)功能
第五步:確定函數(shù)值

注意:

(特別重要I袼А)函數(shù)只有在調(diào)用時(shí)候才會(huì)執(zhí)行
函數(shù)調(diào)用
固定格式
函數(shù)名(實(shí)參列表)

說(shuō)明:

函數(shù)名:你要調(diào)用哪個(gè)函數(shù)再姑,就寫(xiě)對(duì)應(yīng)的函數(shù)名。函數(shù)只能聲明才能調(diào)用

實(shí)參列表;就是用來(lái)給形參賦值的

def sum(num,num1):
    print(num+num1)
sum(100,11)
函數(shù)的調(diào)用過(guò)程(強(qiáng)調(diào)U矣T啤绍填!必須掌握)
回到函數(shù)聲明的位置
使用實(shí)參給形參賦值(傳參)--傳參的時(shí)候一定要保證每個(gè)形參都有值
#執(zhí)行函數(shù)體
講返回值返回給函數(shù)調(diào)用者
回到函數(shù)調(diào)用的地方,接著往后執(zhí)行

參數(shù):聲明函數(shù)的時(shí)候的參數(shù)列表中的參數(shù)叫形參:調(diào)用函數(shù)的時(shí)候栖疑,函數(shù)列表中的參數(shù)叫實(shí)參

傳參:傳參的過(guò)程就是使用實(shí)參給形參賦值的過(guò)程讨永。一定保證夢(mèng)形參都要用值

1位置參數(shù):傳參的時(shí)候?qū)崊⒌奈恢煤托螀⒁灰粚?duì)應(yīng)(第一個(gè)實(shí)參傳給第一形參,遇革,卿闹,)

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

在聲明函數(shù)的時(shí)候,可以給參數(shù)賦默認(rèn)值得(可以給所有的參數(shù)賦默認(rèn)值萝快,也可以給部分參數(shù)賦默認(rèn)值)

給部分參數(shù)默認(rèn)值得時(shí)候锻霎,要求默認(rèn)值的參數(shù)必須放到參數(shù)列表的最后

不定個(gè)數(shù)參數(shù)

def sum2(*num):
  #print(num,tape(num0))
  sum1=0
for x in num:
  sum+=x
print(sum)

對(duì)參數(shù)的類 型進(jìn)行說(shuō)明

python不能直接約束一個(gè)變量的類型。但是可以通過(guò)說(shuō)明杠巡,來(lái)提示用戶調(diào)用函數(shù)的時(shí)候量窘,參數(shù)的類型

返回值:函數(shù)的返回值就是return關(guān)鍵字后面的表達(dá)式的值。就是函數(shù)調(diào)用表達(dá)式的結(jié)果

Python中所有的函數(shù)都有返回值氢拥,默認(rèn)是none(沒(méi)有return)

如果函數(shù)體中沒(méi)有return蚌铜,函數(shù)返回值就是none

調(diào)用函數(shù)的語(yǔ)句就是函數(shù)調(diào)用表達(dá)式

def say_hello():
  print('hello')
re=say_hello()
print(re)

return關(guān)鍵字

確定返回值

結(jié)束函數(shù)(函數(shù)中只要遇到return,函數(shù)就直接結(jié)束)

作業(yè)

  1. 編寫(xiě)一個(gè)函數(shù)嫩海,求1+2+3+...+N
def sum_test(n):
    sum  = 0
    for x in range(1,n+1):
        sum += x
    print(sum)

sum_test(10)
'''
55
'''

  1. 編寫(xiě)一個(gè)函數(shù)冬殃,求多個(gè)數(shù)中的最大值
def max_value(*t):
    list1 = list(t)
    list1.sort()
    print(list1[len(list1)-1])

max_value(1,2,4,55,3,23,566,7,7)
'''
566
'''

  1. 編寫(xiě)一個(gè)函數(shù),實(shí)現(xiàn)搖色子的功能叁怪,打印n個(gè)色子的點(diǎn)數(shù)和
import random
def dicl_sum(n):
    sum = 0
    for x in range(1,n+1):
        sum += random.randint(1,6)
    print('%d次搖骰子的點(diǎn)數(shù)和是:%d' % (n,sum))

dicl_sum(10)
'''
10次搖骰子的點(diǎn)數(shù)和是:42
'''

  1. 編寫(xiě)一個(gè)函數(shù)审葬,交換指定字典的key和value。

    [圖片上傳失敗...(image-7ae481-1535618676449)]

def dict_chane(dict1):
    change_dict = {}
    for dict1_id in dict1:
        value = dict1[dict1_id]
        key  = dict1_id
        change_dict[value] = key
    else:
        return change_dict

dict1 = {1:'a',2:'b','c':3}

print('之前')
print(dict1)

print('之后')
print(dict_chane(dict1))
'''
之前
{1: 'a', 2: 'b', 'c': 3}
之后
{'a': 1, 'b': 2, 3: 'c'}
'''

  1. 編寫(xiě)一個(gè)函數(shù)奕谭,三個(gè)數(shù)中的最大值
def three_max(*n):
    list1 = list(n)
    for x in list1:
        print('%d' %x,end= ' ')
    list1.sort()
    print('中最大的是%d' % list1[len(list1)-1])

three_max(1,4,55,22)
'''
1 4 55 22 中最大的是55
'''

  1. 編寫(xiě)一個(gè)函數(shù)涣觉,提取指定字符串串中的所有的字母,然后拼接在一起后打印出來(lái)

    [圖片上傳失敗...(image-22a530-1535618676449)]

def str_Splice(str1,*n):
    if len(n) > len(str1):
        print('請(qǐng)重新輸入范圍血柳,范圍過(guò)大')
        str_Splice(str1,**n)
    else:
        choose = list(n)
        choose_list = []

        for index in choose:
            choose_list.append(str1[index])
        else:
            return ''.join(choose_list)

str1 = 'sadhkadhksadkwajdkwandka'
print('之前')
print(str1)
print('之后')
print(str_Splice(str1,1,3,4,6,7,10))
'''
sadhkadhksadkwajdkwandka
之后
ahkdha

'''

  1. 寫(xiě)一個(gè)函數(shù)官册,求多個(gè)數(shù)的平均值
def average_test(*n):
    sum = 0
    for value in n:
        sum += value
    print('平均數(shù)是%.2f' % (sum/len(n)))

average_test(1,2,3,4,5,6,6)

'''
平均數(shù)是3.86
'''

  1. 寫(xiě)一個(gè)函數(shù),默認(rèn)求10的階層难捌,也可以求其他數(shù)的階層

def factorial(n):
    sum = 1
    for x in range(1,n+1):
        sum *= x
    print('%d的階乘是%d' %(n,sum))

factorial(5)
'''
5的階乘是120
'''

  1. 寫(xiě)一個(gè)函數(shù)膝宁,可以對(duì)多個(gè)數(shù)進(jìn)行不同的運(yùn)算

    [圖片上傳失敗...(image-9463f5-1535618676449)]

def operation(value1,*value2):
    list1 = list(value2)
    first_value = list1[0]
    for x in list1[1:]:
        first_value = eval('%d %s %d' % (first_value,value1,x))
    print(first_value)

operation('+',1,2)
operation('*',2,3,4,5)
'''
3
120
'''

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市根吁,隨后出現(xiàn)的幾起案子员淫,更是在濱河造成了極大的恐慌,老刑警劉巖击敌,帶你破解...
    沈念sama閱讀 222,681評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件介返,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡愚争,警方通過(guò)查閱死者的電腦和手機(jī)映皆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,205評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門挤聘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人捅彻,你說(shuō)我怎么就攤上這事组去。” “怎么了步淹?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,421評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵从隆,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我缭裆,道長(zhǎng)键闺,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,114評(píng)論 1 300
  • 正文 為了忘掉前任澈驼,我火速辦了婚禮辛燥,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缝其。我一直安慰自己挎塌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,116評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布内边。 她就那樣靜靜地躺著榴都,像睡著了一般。 火紅的嫁衣襯著肌膚如雪漠其。 梳的紋絲不亂的頭發(fā)上嘴高,一...
    開(kāi)封第一講書(shū)人閱讀 52,713評(píng)論 1 312
  • 那天,我揣著相機(jī)與錄音和屎,去河邊找鬼拴驮。 笑死,一個(gè)胖子當(dāng)著我的面吹牛柴信,可吹牛的內(nèi)容都是我干的莹汤。 我是一名探鬼主播,決...
    沈念sama閱讀 41,170評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼颠印,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了抹竹?” 一聲冷哼從身側(cè)響起线罕,我...
    開(kāi)封第一講書(shū)人閱讀 40,116評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎窃判,沒(méi)想到半個(gè)月后钞楼,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,651評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡袄琳,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,714評(píng)論 3 342
  • 正文 我和宋清朗相戀三年询件,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了燃乍。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,865評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡宛琅,死狀恐怖刻蟹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情嘿辟,我是刑警寧澤舆瘪,帶...
    沈念sama閱讀 36,527評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站红伦,受9級(jí)特大地震影響英古,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜昙读,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,211評(píng)論 3 336
  • 文/蒙蒙 一召调、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蛮浑,春花似錦唠叛、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,699評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至壮虫,卻和暖如春澳厢,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背囚似。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,814評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工剩拢, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人饶唤。 一個(gè)月前我還...
    沈念sama閱讀 49,299評(píng)論 3 379
  • 正文 我出身青樓徐伐,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親募狂。 傳聞我的和親對(duì)象是個(gè)殘疾皇子办素,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,870評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 函數(shù)和對(duì)象 1、函數(shù) 1.1 函數(shù)概述 函數(shù)對(duì)于任何一門語(yǔ)言來(lái)說(shuō)都是核心的概念祸穷。通過(guò)函數(shù)可以封裝任意多條語(yǔ)句性穿,而且...
    道無(wú)虛閱讀 4,585評(píng)論 0 5
  • 函數(shù)只定義一次,但可能被執(zhí)行或調(diào)用任意次雷滚。JS函數(shù)是參數(shù)化的需曾,函數(shù)的定義會(huì)包括一個(gè)稱為形參的標(biāo)識(shí)符列表,這些參數(shù)在...
    PySong閱讀 856評(píng)論 0 0
  • 函數(shù)只定義一次,但可能被執(zhí)行或調(diào)用任意次呆万。JS函數(shù)是參數(shù)化的商源,函數(shù)的定義會(huì)包括一個(gè)稱為形參的標(biāo)識(shí)符列表,這些參數(shù)在...
    PySong閱讀 321評(píng)論 0 0
  • 上周五回來(lái)兒子不知從哪里冒出來(lái)一句話“媽媽谋减,我想轉(zhuǎn)學(xué)牡彻,我不想再這個(gè)學(xué)校了”當(dāng)時(shí)我的第一感覺(jué)就是,是不是班級(jí)里有別的...
    鏗鏘玫瑰精靈閱讀 75評(píng)論 1 0
  • 我是張夏艷,我是樊登讀書(shū)會(huì)漳州分會(huì)的執(zhí)行會(huì)長(zhǎng)以政,我也是兩個(gè)孩子的媽媽霸褒,同時(shí)我是全國(guó)孝友會(huì)的成員,這是我2018...
    張夏艷閱讀 212評(píng)論 0 0