python学习(函数)
前言:目前先將python的基礎語法和知識學完,再去嘗試寫腳本,這次就學習python中的函數和類。
一、定義函數
使用關鍵字def 來定義一個函數,這就是函數定義,而且定義以冒號結尾。
格式:
def 函數名 :內容函數名例如:
def message():"""打印的信息"""print("hello world") message() 輸出結果: hello world"""打印的信息"""被稱為文檔字符串的注釋,文檔字符串用三引號括起來。
二、向函數傳遞信息
def message(username):"""打印的信息"""print("hello,"+username.title()) #調用函數 message('lemon')
通過這個例子可以知道,在定義函數時括號內添加了username ,我們在調用的時候可以賦任何值給username。
三、位置實參
調用函數時,Python必須將函數調用中的每個實參都關聯到函數定義中的一個形參。最簡單的關聯方式是基于實參的順序,這就算位置參數。
調用函數多次,如:
應注意在函數調用時實參的順序與函數定義中形參的順序是否一致
關鍵字實參
關鍵字實參是傳遞給函數的名稱—值對,直接在實參中將名稱和值關聯起來,因此向函數傳遞實參時不會混淆.
關鍵字實參明確地指出了各個實參對應的形參,因此不會出現因為順序而混淆的情況。
默認值
編寫函數時,可給每個形參指定默認值。在調用函數中給形參提供了實參時,Python將使用指定的實參值;否則,將使用形參的默認值。
使用默認值時,在形參列表中必須先列出沒有默認值的形參,再列出有默認值的實參。這樣才能夠正確地解讀位置實參。
四、返回值
函數并非總是直接顯示輸出,相反,它可以處理一些數據,并返回一個或一組值。函數返回的值被稱為返回值 。
返回簡單的值
相較于之前,需要再次調用函數并賦值有些麻煩,返回值直接是賦值給一個變量,我們通過打印出這個變量即可得出相應的值。
讓實參變成可選的
有時候,需要讓實參變成可選的,這樣使用函數就可以提供額外的信息。
可使用默認值來讓實參變成可選的。
這里用一個if語句來進行判斷middle_name是否存在,通過這樣的判斷,就可以打印出不同的情況,這里便是將middle_name變成可選的。
返回字典
函數可返回任何類型的值,包括列表和字典等較復雜的數據結構。
full_name接收first_name和last_name,并將這些值封裝到字典中.
同樣可以增加一個可選值,如果存在則添加到字典中,并通過返回值賦值給變量
使用函數和while循環
五、傳遞列表
將列表傳遞給函數后,函數就能直接訪問其內容
通過把列表傳遞給函數,提高效率
傳遞任意數量的實參
形參名*toppings 中的星號讓Python創建一個名為toppings 的空元組,并將收到的所有值都封裝到這個元組中
不管收到的是一個值還是三個值,函數都能妥善地處理
結合使用位置實參和任意數量實參
如果要讓函數接受不同類型的實參,必須在函數定義中將接納任意數量實參的形參放在最后。Python先匹配位置實參和關鍵字實參,再將余下的實參都收集到最后一個形參中。
Python將收到的第一個值存儲在形參size 中,并將其他的所有值都存儲在元組toppings中
使用任意數量的關鍵字實參
結果:
形參**user_info 中的兩個星號讓Python創建一個名為user_info 的 空字典,并將收到的所有名稱—值對都封裝到這個字典中。 然后遍歷字典user_info 中的鍵—值對,并將每個鍵—值對都加入到字典profile 中。
六、將函數存儲在模塊中
導入整個模塊
模塊 是擴展名為.py的文件,包含要導入到程序中的代碼
只需編寫一條import 語句并在其中指定模塊名,就可在程序中使用該模塊中的所有函數。
例如:
使用這種import 語句導入了名為module_name.py 的整個模塊,就可使用下面的語法來使用其中任何一個函數:
導入特定的函數
from module_name import function_name通過用逗號分隔函數名,可根據需要從模塊中導入任意數量的函數:
from module_name import function_0, function_1, function_2使用as給函數指定別名
函數make_pizza() 指定了別名mp()
指定別名通用語法:
from module_name import function_name as fn使用as給模塊起別名
導入模塊中的所有函數
使用星號(* )運算符可讓Python導入模塊中的所有函數
總結
以上是生活随笔為你收集整理的python学习(函数)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Bugku—web题解
- 下一篇: Python爬虫之旅_ONE