国产探花免费观看_亚洲丰满少妇自慰呻吟_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把結果繼續和序列的下一個元素做累積計算。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 遂川县| 清新县| 法库县| 尚义县| 肃南| 恩平市| 桓台县| 息烽县| 江山市| 高要市| 姚安县| 体育| 长宁县| 嘉兴市| 桐乡市| 策勒县| 江川县| 沂水县| 林州市| 扬中市| 扶风县| 杭州市| 太康县| 离岛区| 密山市| 罗定市| 大关县| 黎平县| 防城港市| 乌兰县| 香河县| 克东县| 辽阳县| 牙克石市| 菏泽市| 雷波县| 秦皇岛市| 普陀区| 扶余县| 宜春市| 嘉兴市|