国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

初學Python函數的筆記整理

2020-02-23 00:34:24
字體:
來源:轉載
供稿:網友

 定義
返回單值

def my_abs(x):  if x >= 0:    return x  else:    return -x 

返回多值

返回多值就是返回一個tuple

import math def move(x, y, step, angle=0):  nx = x + step * math.cos(angle)  ny = y - step * math.sin(angle)  return nx, ny

空函數
 

def nop():  pass

指定默認參數

必選參數在前,默認參數在后。默認參數需指向不可變對象(默認參數值在函數定義時被計算)
 

def power(x, n=2):  s = 1  while n > 0:    n = n - 1    s = s * x  return s

可變參數
 

def calc(*numbers):  sum = 0  for n in numbers:    sum = sum + n * n  return sum

調用可變參數的函數方法
 

>>> calc(1, 2)5>>> calc()0>>> nums = [1, 2, 3]>>> calc(*nums)14

關鍵字參數
 

def person(name, age, **kw):  print 'name:', name, 'age:', age, 'other:', kw

調用關鍵字參數的方法
 

>>> person('Michael', 30)name: Michael age: 30 other: {}>>> person('Bob', 35, city='Beijing')name: Bob age: 35 other: {'city': 'Beijing'}>>> person('Adam', 45, gender='M', job='Engineer')name: Adam age: 45 other: {'gender': 'M', 'job': 'Engineer'}>>> kw = {'city': 'Beijing', 'job': 'Engineer'}>>> person('Jack', 24, **kw)name: Jack age: 24 other: {'city': 'Beijing', 'job': 'Engineer'}

注:

    參數定義的順序必須是:必選參數、默認參數、可變參數和關鍵字參數。
    對于任意函數,都可以通過類似func(*args, **kw)的形式調用它,無論它的參數是如何定義的。

遞歸

如果一個函數在內部調用自身本身,這個函數就是遞歸函數。
尾遞歸

在函數返回的時候,調用自身本身,并且,return語句不能包含表達式。
高階函數

    變量可以指向函數(函數可以賦值給一個變量)     函數名也是變量(函數名可以賦值其他值)     函數可以做為函數的參數(高階函數)

map(func, list)

map()函數接收兩個參數,一個是函數,一個是序列,map將傳入的函數依次作用到序列的每個元素,并把結果作為新的list返回。
 

>>> def f(x):...   return x * x...>>> map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])[1, 4, 9, 16, 25, 36, 49, 64, 81]
reduce(func_with_two_params, list)

reduce把一個函數作用在一個序列[x1, x2, x3…]上,這個函數必須接收兩個參數,reduce把結果繼續和序列的下一個元素做累積計算。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广平县| 潼关县| 天台县| 清河县| 延长县| 客服| 绥德县| 景德镇市| 金山区| 莎车县| 永兴县| 合山市| 保定市| 古浪县| 志丹县| 托克逊县| 苗栗市| 宁武县| 湟中县| 吴川市| 青田县| 铜梁县| 互助| 调兵山市| 沂南县| 普格县| 武宁县| 麻城市| 高州市| 洪江市| 中江县| 福建省| 青浦区| 碌曲县| 泌阳县| 镇安县| 南和县| 磴口县| 河池市| 乌鲁木齐市| 嵊州市|