python进制转换内置函数_python数学运算、逻辑运算和进制转化相关的 内置函数...
學習函數原型
有些朋友平時反映,看不懂官方文檔中介紹函數的說明,比如:
max(iterable,*[, key, default])
max 函數的幾個形參,為什么有 * 符號,又有 []?
今天在總結內置函數前,先看下如何理解函數原型的文檔。
函數形參列表中符號 * 表示,后面的形參只能為關鍵字參數(keyword argument),不能為位置參數(positional argument),也就是說,max 函數要這么用:
In [5]: a = [1,2,3,4,2,2,3]
In [6]: max(a,key=lambda x: a.count(x), default=1)
Out[6]: 2
定義函數 f,參數 b 位于*后面,只能為關鍵字參數:
In [116]: def f(a,*,b):
...: pass
In [117]: f(a,b=1)
In [118]: f(a,1) # 這種調用是錯誤的
TypeError: f() takes 1 positional argument but 2 were given
再看一個內置函數 sum:
sum(iterable, /, start=0)
看到形參列表中有一個 /,它表示 / 前的參數只能是位置參數,不能是關鍵字參數。
因此,以下調用是合法的:
In [18]: a = [1,3,2,1,4,2]
In [19]: sum(a,2) # start=2 表示求和的初始值為 2
Out[19]: 15
以下調用是非法的,iterable 參數不能被賦值為關鍵字實參:
In [23]: sum(iterable=a,start=2)
TypeError: sum() takes no keyword arguments
數學運算
len(s)
返回對象內元素個數:
In [83]: dic = {'a':1,'b':3}
In [84]: len(dic)
Out[84]: 2
max(iterable,*[, key, default])
max(iterable,*[, key, default]),返回最大值:
In [99]: max(3,1,4,2,1)
Out[99]: 4
In [100]: max((),default=0)
Out[100]: 0
In [89]: di = {'a':3,'b1':1,'c':4}
In [90]: max(di)
Out[90]: 'c'
In [102]: a = [{'name':'xiaoming','age':18,'gender':'male'},{'name':'
...: xiaohong','age':20,'gender':'female'}]
In [104]: max(a,key=lambda x: x['age'])
Out[104]: {'name': 'xiaohong', 'age': 20, 'gender': 'female'}
如果已知多個列表,找出列表更長的,使用 max 方法:
In [12]: def max_length(*lst):
...: return max(*lst, key=lambda v: len(v))
In [13]: max_length([1, 2, 3], [4, 5, 6, 7], [8])
Out[13]: [4, 5, 6, 7]
round(number[, ndigits])
四舍五入,ndigits 代表小數點后保留幾位:
In [157]: round(10.0222222, 3)
Out[157]: 10.022
sum(iterable, /, start=0)
求和:
In [181]: a = [1,4,2,3,1]
In [182]: sum(a)
Out[182]: 11
In [185]: sum(a,10) #求和的初始值為10
Out[185]: 21
abs(x, /)
求絕對值或復數的模:
In [1]: abs(-6)
Out[1]: 6
divmod(a,b)
分別取商和余數:
In [97]: divmod(10,3)
Out[97]: (3, 1)
complex([real[, imag]])
創建一個復數:
In [81]: complex(1,2)
Out[81]: (1+2j)
邏輯運算
all(iterable)
接受一個迭代器,如果迭代器的所有元素都為真,返回 True,否則返回 False:
In [2]: all([1,0,3,6])
Out[2]: False
In [3]: all([1,2,3])
Out[3]: True
any(iterable)
接受一個迭代器,如果迭代器里有一個元素為真,返回 True,否則返回 False:
In [4]: any([0,0,0,[]])
Out[4]: False
In [5]: any([0,0,1])
Out[5]: True
bin(x)
將十進制轉換為二進制:
In [35]: bin(10)
Out[35]: '0b1010'
oct(x)
將十進制轉換為八進制:
In [36]: oct(9)
Out[36]: '0o11'
hex(x)
將十進制轉換為十六進制:
In [37]: hex(15)
Out[37]: '0xf'
總結
以上是生活随笔為你收集整理的python进制转换内置函数_python数学运算、逻辑运算和进制转化相关的 内置函数...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言goto语句用法_C语言中的got
- 下一篇: ftp 工具_ftp,ftp工具多大