python 函數(shù)的詳解與應(yīng)用范例
如何定義一個(gè)函數(shù)
函數(shù)也稱方法,下面寫一個(gè)簡單的函數(shù):
def function():
print("我是函數(shù)。")
這是一個(gè)很簡單的函數(shù),函數(shù)只干了一件事,打印輸出“我是函數(shù)?!边@句話。
從這個(gè)函數(shù)的外觀看,有個(gè)def,還有個(gè)function加個(gè)()和:。
def是定義函數(shù)的關(guān)鍵字不能改動(dòng),function為函數(shù)的名稱,可以隨便寫,后加()和:這是規(guī)定。
在函數(shù)里面的輸出語句可以稱之為函數(shù)體所有函數(shù)體需要進(jìn)行縮進(jìn),不然那個(gè)會(huì)報(bào)錯(cuò)。
如何使用
使用方式很簡單
function()
重復(fù)函數(shù)名再加上括號,就可以使用了
什么是參數(shù)
接下來我寫一個(gè)函數(shù):
def function(a,b): print(a,b)
在這個(gè)函數(shù)里,括號里面的 a和b就叫參數(shù)(函數(shù)參數(shù))也叫形式參數(shù)。參數(shù)是干什么的呢?參數(shù)的作用是可以向這個(gè)目標(biāo)函數(shù)傳入一些東西。
比如在這個(gè)函數(shù)里是可以打印外面?zhèn)魅氲膮?shù)內(nèi)容:
function("aaa","bbb")
我向這個(gè)函數(shù)傳入了兩個(gè)參數(shù),參數(shù)的位置是不能改變的,"aaa"可以成為實(shí)際參數(shù),對應(yīng)的就是a這個(gè)形式參數(shù),"bbb"對應(yīng)就是b,這個(gè)傳入的過程為參數(shù)傳遞
結(jié)果輸出的順序就是:
aaa bbb
還可以這樣進(jìn)行參數(shù)傳遞:
function(a="aaa","bbb")
function("aaa",b="bbb")
function(a="aaa",b="bbb")
function(b="bbb",a="aaa")
當(dāng)我們所定義的函數(shù)里面存在參數(shù),當(dāng)使用的它的時(shí)候,一定需要傳入?yún)?shù)不然會(huì)報(bào)錯(cuò),類如:
def function(a): print(a) function()
運(yùn)行結(jié)果:
TypeError Traceback (most recent call last)
<ipython-input-1-1ea14deaa8c8> in <module>
2 print(a)
3
----> 4 function()TypeError: function() missing 1 required positional argument: 'a'
不定長參數(shù)
如果不知到傳遞的參數(shù)到底有多少,該怎么辦呢?
可以用*和**來實(shí)現(xiàn)。
加了 * 的參數(shù)會(huì)以元組(tuple)的形式傳入,存放所有未命名的變量參數(shù),類如:
def function(*args): print(args) function(12,35,65)
運(yùn)行結(jié)果:
(12, 35, 65)
發(fā)現(xiàn)輸出結(jié)果是一個(gè)元組,包含了所有傳入的參數(shù)
加了兩個(gè)星號 ** 的參數(shù)會(huì)以字典的形式傳入;
def function(**kwargs): print(kwargs) function(a=12,b=35,c=65)
這里傳入的參數(shù)需要注意,是鍵值對。
當(dāng) 一個(gè)星號,和兩個(gè)星號同時(shí)出現(xiàn),一個(gè)星號必須在兩個(gè)星號前面,列如:
def function(*args, **kwargs): print(args) print(kwargs)
return是干什么
如果函數(shù)里面出現(xiàn)return,表示這個(gè)函數(shù)運(yùn)行到這里結(jié)束了,后面不管有多少多不會(huì)再執(zhí)行。并且return會(huì)返回它后面表達(dá)式的值,相當(dāng)于把后面的值賦給函數(shù),例如:
def function():
print("aa")
return "aaa"
print("bb")
print(function())
運(yùn)行結(jié)果:
aa
aaa
發(fā)現(xiàn)return后面的語句沒有執(zhí)行函數(shù)就退出了,并且函數(shù)自己也有值了。
到此這篇關(guān)于python 函數(shù)的詳解與應(yīng)用范例的文章就介紹到這了,更多相關(guān)python 函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
用Python中的wxPython實(shí)現(xiàn)最基本的瀏覽器功能
這篇文章主要介紹了用Python中的wxPython實(shí)現(xiàn)基本的瀏覽器功能,本文來自于IBM官方網(wǎng)站開發(fā)者文檔,需要的朋友可以參考下2015-04-04
基于python for in if 連著寫與分開寫的區(qū)別說明
這篇文章主要介紹了基于python for in if 連著寫與分開寫的區(qū)別說明,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03
使用Python實(shí)現(xiàn)文本情感分析預(yù)處理的詳細(xì)教程
在自然語言處理(NLP)領(lǐng)域,文本情感分析是一項(xiàng)重要任務(wù),它旨在通過計(jì)算機(jī)技術(shù)識(shí)別和提取文本中的情感傾向(如正面、負(fù)面或中性),為了實(shí)現(xiàn)準(zhǔn)確的情感分析,預(yù)處理步驟至關(guān)重要,所以本文給大家介紹了使用Python實(shí)現(xiàn)文本情感分析預(yù)處理的詳細(xì)教程,需要的朋友可以參考下2025-04-04
mac PyCharm添加Python解釋器及添加package路徑的方法
今天小編就為大家分享一篇mac PyCharm添加Python解釋器及添加package路徑的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
通過conda把已有虛擬環(huán)境的python版本進(jìn)行降級操作指南
當(dāng)使用conda創(chuàng)建虛擬環(huán)境時(shí),有時(shí)候可能會(huì)遇到python版本不對的問題,下面這篇文章主要給大家介紹了關(guān)于如何通過conda把已有虛擬環(huán)境的python版本進(jìn)行降級操作的相關(guān)資料,需要的朋友可以參考下2024-05-05
Python裝飾器使用實(shí)例:驗(yàn)證參數(shù)合法性
這篇文章主要介紹了Python裝飾器使用實(shí)例:驗(yàn)證參數(shù)合法性,本文直接給出代碼實(shí)例,代碼中包含詳細(xì)注釋,需要的朋友可以參考下2015-06-06

