python_函數初始

來源:互聯網
上載者:User

標籤:需要   很多   bcd   type   span   傳參   固定   info   字串   

<h1 style=‘color:#2daebf;‘>一、函數的定義與調用</h1>
‘‘‘
定義:def 關鍵詞開頭,空格之後接函數名稱和圓括弧(),最後還有一個‘:‘
def 是固定的,不能變,它就是定義函數的關鍵字
   函數名:函數名只能包含字串、底線和數字且不能以數字開頭。
雖然函數名可以隨便起,但我們給函數起名字還是要盡量簡短,並能表達函數功能
   括弧:是必須加的,先別問為啥要有括弧,總之加上括弧就對了!
注釋:每一個函數都應該對功能和參數進行相應的說明,應該寫在函數下面第一行。以增強代碼的可讀性。
調用:就是 函數名() 要記得加上括弧。
‘‘‘
# return 返回一個值
# def count_len(s):
# length = 0
# for i in s:
# length+=1
# return length
#
# s = ‘abcdefg‘
# print(count_len(s))

# 函數的傳回值 return
# 沒有傳回值,不寫return的情況下,會預設返回一個None

# 唯寫return,後面不寫其它內容,也會返回None,一旦遇到return,結束整個函數
# def fun():
# return
# print(112)
#
# print(fun())

# 返回多個值,可以返回多個,任意資料類型的值
# 返回的多個值會以元祖形式返回,也可用多個值來接收
# def fun():
# return 1,[‘a‘,2],{‘namet‘:‘alex‘},(5,6)
#
# print(fun())

# 返回多個值用一個變數接收
# def get():
# return ‘a‘,[2,1],{‘name‘:‘alex‘}
#
# s = get()
# print(s)

# 返回多個值用多個變數接收
# def get():
# return ‘a‘,[2,1],{‘name‘:‘alex‘}
#
# a,b,c = get()
# print(a,b,c)

# 函數的參數
# 實參與形參
# 實參:調用函數時傳遞的‘alex‘叫做實際參數,因為這個是實際要交給函數的內容,簡稱實參
# 形參:定義函數是的name,只是一個變數的名字,被稱為形式參數,因為在定義函數時它只是一個形式
# 表示這裡有一個參數,簡稱形參
# 傳遞多個參數:參數可以傳遞多個,多個參數之間用逗號隔開
# def get_info(name):
# return name
# get_info(‘alex‘)

# 位置參數
# 1、站在實參角度,按照位置參數
# def func(x,y):
# if x>y:
# return x
# else:
# return y
#
# print(func(10,20))

# 2、按照關鍵字傳值
# def func(x,y):
# if x>y:
# return x
# else:
# return y
#
# print(func(y=2,x=3))

# 3、位置、關鍵字形式混著用
# def func(x,y):
# if x>y:
# return x
# else:
# return y
#
# print(func(2,y=3))

# 正確用法
# 問題一:位置參數必須在關鍵字參數的前面
# 問題二:對於一個形參只能賦值一次

# 站在形參角度:位置參數必須傳值
# def fun(x):
# return
# print(fun())
# TypeError: fun() missing 1 required positional argument: ‘x‘

# 預設參數
# 1、正常使用
# 使用方法
# 為什要有預設參數:將變化比較小的值設定成預設值

# 2、預設參數的定義
# def get_info(name,sex=‘male‘):
# 列印學生資訊函數,性別預設為男性
# return name,sex
# print(get_info(‘alex‘))
# print(get_info(‘taibai‘,‘female‘))

# 3、參數陷進:預設參數是一個可變資料類型
# def default_param(a,l=[]):
# l.append(a)
# return l
# print(default_param(‘a‘))
# print(default_param(‘b‘))

# 動態參數
‘‘‘
動態參數:也叫不定長傳參,就是你需要傳給函數的參數很多,不定個數,那這種情況下,你就用*args,
**kwargs接收,args是元祖形式,接收除去索引值對以外的參數,kwargs接收的只是索引值對參數
並儲存在字典中
‘‘‘
# def trans_param(*args,**kwargs):
# print(args,type(args))
# print(kwargs,type(kwargs))
#
# trans_param(‘a‘,1,[2,3],(‘c‘,‘d‘),{‘name‘:‘alex‘},age=‘male‘,a=123)

python_函數初始

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.