python学习-函数(定义、可变参、小练习(列表最小值函数))
函數目錄
- 定義
- 可變參函數
- 自定義列表最小值函數
定義
函數定義使用關鍵字def,可以不帶參數,也可以帶參數,帶參數的函數,可以使用位置參數,詳見示例:
str1 = 'sadf'def printVal():print(str1)printVal()def myadd(a1, a2):return a1 + a2int1 = myadd(3, 6) str2 = myadd('s1', "s2") print("int1 = ", int1) print("str2 = ", str2)運行結果:
 
 因為使用pycharm格式化代碼,會出現兩行空格,這里保持一致,沒有去刪除空格。
 但是需要注意函數類型,因為定義時沒有控制類型,函數內部實現時,需要做一些判斷,比如下面這個代碼:
 所以需要我們自行控制,可以使用函數來進行判斷,順帶我這里還把多條件語句判斷加上了,‘或者’使用or關鍵字,‘并且’使用and關鍵字。
運行結果:
 
可變參函數
如果在函數中調用了一些其他函數,這時候就可以使用可變參列表代替。
 可變參列表為:**kwargs
 如同我們的示例,test2函數有3個參數,printFunc函數調用了test2函數,但是我們定義的時候不關心test2函數的參數有哪些,就可以使用:**kwargs代替。
 以后test2函數修改了參數列表,也不會影響printFunc函數。
 注意:調用函數的時候,需要把參數列表的變量名加上,否則對應不上參數列表。
 即示例中的:x=3, t1=3, t2=6, t3=9。
運行結果:
 
自定義列表最小值函數
def lstMin(lst):if not lst:return Nonebol = FalseminVal = 4294967295for item in lst:if not bol:if isinstance(item, int):if minVal > item:minVal = itembol = Truecontinueif isinstance(item, int):if item < minVal:minVal = itemif not bol:return Nonereturn minVallst1 = [1, 22, 423, '12', 'wewqr', 2134, [213124, 12, '2334']] print('lst1 = ', lst1, type(lst1)) print('lstMin(lst1) = ', lstMin(lst1)) lst2 = [11111, 222222, 4233, '12', 'wewqr', 2134, [213124, 12, '2334']] print('lst2 = ', lst2, type(lst2)) print('lstMin(lst2) = ', lstMin(lst2))運行結果:
 
 自定義了一個求list元素中最小值的函數,當然這個函數是局限性的。只求list元素中數字的最小值,如果沒有數字,則返回None,有數字則返回數字的最小值。因為python一些值怎么獲取還不太清楚,還需要加強。比如int類型的最小值,這個有沒有,怎么表示,百度了一下,貌似沒人解答。如果有清楚的小伙伴,看到這篇博文,可以評論區留言解答。
總結
以上是生活随笔為你收集整理的python学习-函数(定义、可变参、小练习(列表最小值函数))的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python学习-条件语句
- 下一篇: iPhone 7 Plus还有卖吗(苹果
