python 函数前有一个下划线_【Python】怎么写好一个 Python 函数?
1. 命名
符合 PEP-8 函數命名書寫規范的是小寫+下劃線或者比較常用的駝峰命名法。內容方面是動賓結合。 舉個例子:
def setUserName(String userName):pass推薦一個函數命名網站:codeIf 函數中帶有參數類型以及返回值的函數定義寫法:
>>> def setUserName(UserName:str)->None:print(UserName)>>> setUserName('xiaoming')xiaoming值得說明的是,這里并沒有強制類型檢查,這種寫法也并不建議,不過上面的寫法也有一個好處:
如果想顯示函數參數類型的話,可以用函數說明文檔來解決。
>>> def setUserName(UserName):"""@UserName: str"""print(UserName)?>>> print(setUserName.__doc__)?@UserName: str2. 功能單一
一個函數只做一件事情。舉個例子: get_user_list(age)這個函數定義就違反了我們的一個函數只做一件事情的要求,我們需要將op1、op2、op3三個操作分別寫到三個函數中去。但是,也不至于將函數功能分得過細。
def get_user_list(age):# op1: 從數據庫中拿到原始用戶列表信息# op2: 根據 age 提取合適的目標用戶信息# op3: 將用戶分類pass3. 文檔字符串
關于文檔字符串(Documentation Strings),每個函數都應該有一個說明文檔,可以參照下方樣例。需要有函數的功能描述、參數說明、返回值說明。
def if_ID_exit(user='', id=''):"""判斷賬戶是否存在:param user: teacher、student:return: bool, False - 賬戶存在 True - 賬戶不存在"""passprint(if_ID_exit.__doc__)查看函數說明文檔的方式。
判斷賬戶是否存在:param user: teacher、student:return: bool, False - 賬戶存在 True - 賬戶不存在4. 返回值
你可能聽說python的函數能夠返回多個值,像下面這個例子一樣:
def returnSth():return 1,2,3,4但實際上,它會將1,2,3,4作為一個整體返回,也就是說它會將這些數字全都放到元組里面。
print(returnSth()) # (1,2,3,4)每個函數都會有返回值,即使你沒有明確寫出,那么它的返回值也會被默認為None。盡量保證每個函數的返回值都是有意義的。哪怕它沒有什么操作,你也可以返回boolen類型來判斷執行是否順利。
5. 函數長度
不要太長,行數不要超過三位數。 保證入口參數相同的情況下,函數所造成的影響是確定的并且是相同的——純函數。
總結
以上是生活随笔為你收集整理的python 函数前有一个下划线_【Python】怎么写好一个 Python 函数?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos7怎么重置mysql密码_c
- 下一篇: 获取用户列表为空_Python中最常见的