Python內(nèi)置函數(shù)(6)

Python內(nèi)置函數(shù)(1)— abs()赡矢、all()、any()愚屁、ascii()济竹、bin()、bool()霎槐、breakpoint()送浊、bytearray()、bytes()丘跌、callable()袭景。
Python內(nèi)置函數(shù)(2)— chr()、classmethod()闭树、compile()耸棒、complex()、delattr()报辱、dict()与殃、dir()、divmod()、enumerate()幅疼、eval()米奸。
Python內(nèi)置函數(shù)(3)— exec()、filter()爽篷、float()悴晰、format()、frozenset()逐工、getattr()铡溪、globals()、hasattr()泪喊、hash()棕硫、help()。
Python內(nèi)置函數(shù)(4)— hex()窘俺、id()饲帅、input()、int()瘤泪、isinstance()、issubclass育八、iter()对途、len()、list()髓棋、locals()实檀。
Python內(nèi)置函數(shù)(5)— map()、max()按声、memoryview()膳犹、min()、next()签则、object()须床、oct()、open()渐裂、ord()豺旬、pow()。
Python內(nèi)置函數(shù)(6)— print()柒凉、property()族阅、range()、repr()膝捞、reversed()坦刀、round()、set()、setattr()鲤遥、slice()沐寺、sorted()。
Python內(nèi)置函數(shù)(7)— staticmethod()渴频、str()芽丹、sum()、super()卜朗、tuple()拔第、type()、vars()场钉、zip()蚊俺、__import__()。

內(nèi)置函數(shù)(原文)
abs() delattr() hash() memoryview() set()
all() dict() help() min() setattr()
any() dir() hex() next() slice()
ascii() divmod() id() object() sorted()
bin() enumerate() input() oct() staticmethod()
bool() eval() int() open() str()
breakpoint() exec() isinstance() ord() sum()
bytearray() filter() issubclass() pow() super()
bytes() float() iter() print() tuple()
callable() format() len() property() type()
chr() frozenset() list() range() vars()
classmethod() getattr() locals() repr() zip()
compile() globals() map() reversed() __import__()
complex() hasattr() max() round()
內(nèi)置函數(shù)(中文)
abs() delattr() hash() memoryview() set()
all() dict() help() min() setattr()
any() dir() hex() next() slice()
ascii() divmod() id() object() sorted()
bin() enumerate() input() oct() staticmethod()
bool() eval() int() open() str()
breakpoint() exec() isinstance() ord() sum()
bytearray() filter() issubclass() pow() super()
bytes() float() iter() print() tuple()
callable() format() len() property() type()
chr() frozenset() list() range() vars()
classmethod() getattr() locals() repr() zip()
compile() globals() map() reversed() __import__()
complex() hasattr() max() round()
Python內(nèi)置函數(shù).png

51逛万、print()

a)描述

原文:
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
中文:
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
將值打印到流或sys中泳猬。默認(rèn)stdout。
可選關(guān)鍵字參數(shù):
file:類似文件的對象(流);默認(rèn)為當(dāng)前sys.stdout宇植。
sep:插入值之間的字符串得封,默認(rèn)為空格。
end:最后一個值后面的字符串指郁,默認(rèn)是一個換行符忙上。
flush:立即吧內(nèi)容輸出到流文件,不作緩存闲坎。

b)語法

print() 方法的語法:print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

c)參數(shù)

objects:復(fù)數(shù)疫粥,表示可以一次輸出多個對象。輸出多個對象時腰懂,需要用 , 分隔梗逮。
sep:用來間隔多個對象,默認(rèn)值是一個空格绣溜。
end:用來設(shè)定以什么結(jié)尾慷彤。默認(rèn)值是換行符 \n,我們可以換成其他字符串涮毫。
file:要寫入的文件對象瞬欧。
flush:輸出是否被緩存通常決定于 file,但如果 flush 關(guān)鍵字參數(shù)為 True罢防,流會被強(qiáng)制刷新艘虎。

d)返回值

無。

e)實例

實例1:

print(1)
print("Hello World")
a = 1
b = 'kevin'
print(a, b)
print("aaa""bbb")
print("aaa", "bbb")
print("www", "kevin", "com", sep=".")  # 設(shè)置間隔符

運行結(jié)果:

1
Hello World
1 kevin
aaabbb
aaa bbb
www.kevin.com

實例2:

import time
print("---KEVIN EXAMPLE : Loading 效果---")
print("Loading",end = "")
for i in range(20):
    print(".",end = '',flush = True)
    time.sleep(0.5)

運行結(jié)果:

---KEVIN EXAMPLE : Loading 效果---
Loading....................

52咒吐、property()

a)描述

property() 函數(shù)的作用是在新式類中返回屬性值野建。

b)語法

property() 方法的語法:class property([fget[, fset[, fdel[, doc]]]])

c)參數(shù)

fget:獲取屬性值的函數(shù)属划。
fset:設(shè)置屬性值的函數(shù)。
fdel:刪除屬性值函數(shù)候生。
doc:屬性描述信息同眯。

d)返回值

返回新式類屬性。

e)實例

定義一個可控屬性值 x

class C(object):
    def __init__(self):
        self._x = None
    def getx(self):
        return self._x
    def setx(self, value):
        self._x = value
    def delx(self):
        del self._x
    x = property(getx, setx, delx, "I'm the 'x' property.")

如果 c 是 C 的實例化, c.x 將觸發(fā) getter,c.x = value 將觸發(fā) setter 唯鸭, del c.x 觸發(fā) deleter须蜗。
如果給定 doc 參數(shù),其將成為這個屬性值的 docstring目溉,否則 property 函數(shù)就會復(fù)制 fget 函數(shù)的 docstring(如果有的話)明肮。
將 property 函數(shù)用作裝飾器可以很方便的創(chuàng)建只讀屬性:

class Parrot(object):
    def __init__(self):
        self._voltage = 100000
    @property
    def voltage(self):
        """Get the current voltage."""
        return self._voltage

上面的代碼將 voltage() 方法轉(zhuǎn)化成同名只讀屬性的 getter 方法。
property 的 getter,setter 和 deleter 方法同樣可以用作裝飾器:

class C(object):
    def __init__(self):
        self._x = None
    @property
    def x(self):
        """I'm the 'x' property."""
        return self._x
    @x.setter
    def x(self, value):
        self._x = value
    @x.deleter
    def x(self):
        del self._x

這個代碼和第一個例子完全相同缭付,但要注意這些額外函數(shù)的名字和 property 下的一樣柿估,例如這里的 x。

53陷猫、range()

a)描述

range() 函數(shù)返回的是一個可迭代對象(類型是對象)秫舌,而不是列表類型, 所以打印的時候不會打印列表绣檬。
list() 函數(shù)是對象迭代器足陨,可以把range()返回的可迭代對象轉(zhuǎn)為一個列表,返回的變量類型為列表娇未。

b)語法

range的語法:
range(stop)
range(start, stop[, step])

c)參數(shù)

start:計數(shù)從 start 開始钠右。默認(rèn)是從 0 開始。例如range(5)等價于range(0忘蟹, 5)。
stop:計數(shù)到 stop 結(jié)束搁凸,但不包括 stop媚值。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5护糖。
step:步長褥芒,默認(rèn)為1。例如:range(0嫡良, 5) 等價于 range(0, 5, 1)锰扶。

d)返回值

返回的是一個可迭代對象。

e)實例

實例1:

print("range(5):",range(5))
print("range(0, 5):",range(0, 5))
for i in range(5):
    print(i)
print("list(range(5)):",list(range(5)))
print("list(range(0)):",list(range(0)))

運行結(jié)果:

range(5): range(0, 5)
range(0, 5): range(0, 5)
0
1
2
3
4
list(range(5)): [0, 1, 2, 3, 4]
list(range(0)): []

實例2(有兩個參數(shù)或三個參數(shù)的情況(第二種構(gòu)造方法)):

print("list(range(0, 30, 5)):",list(range(0, 30, 5)))
print("list(range(0, 10, 2)):",list(range(0, 10, 2)))
print("list(range(0, -10, -1)):",list(range(0, -10, -1)))
print("list(range(1, 0)):",list(range(1, 0)))

運行結(jié)果:

list(range(0, 30, 5)): [0, 5, 10, 15, 20, 25]
list(range(0, 10, 2)): [0, 2, 4, 6, 8]
list(range(0, -10, -1)): [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
list(range(1, 0)): []

54寝受、repr()

a)描述

原文:
Return the canonical string representation of the object.
For many object types, including most builtins, eval(repr(obj)) == obj.
中文:
返回對象的規(guī)范字符串表示形式坷牛。
對于許多對象類型,包括大多數(shù)內(nèi)建很澄,eval(repr(obj)) == obj京闰。

b)語法

repr() 方法的語法:repr(object)

c)參數(shù)

object:對象颜及。

d)返回值

返回一個對象的 string 格式。

e)實例
s = 'KEVIN'
print("repr(s):",repr(s))
dict = {'kevin': 'kevin.com', 'google': 'google.com'};
print("repr(dict):",repr(dict))

運行結(jié)果:

repr(s): 'KEVIN'
repr(dict): {'kevin': 'kevin.com', 'google': 'google.com'}

55蹂楣、reversed()

a)描述

原文:
Return a reverse iterator over the values of the given sequence.
中文:
返回給定序列值的反向迭代器俏站。

b)語法

reversed 的語法:reversed(seq)

c)參數(shù)

seq:要轉(zhuǎn)換的序列,可以是 tuple, string, list 或 range痊土。

d)返回值

返回一個反轉(zhuǎn)的迭代器肄扎。

e)實例
# 字符串
seqString = 'Kevin'
print("list(reversed(seqString)):",list(reversed(seqString)))
# 元組
seqTuple = ('K', 'e', 'v', 'i', 'n')
print("list(reversed(seqTuple)):",list(reversed(seqTuple)))
# range
seqRange = range(5, 9)
print("list(reversed(seqRange)):",list(reversed(seqRange)))
# 列表
seqList = [1, 2, 4, 3, 5]
print("list(reversed(seqList)):",list(reversed(seqList)))

運行結(jié)果:

list(reversed(seqString)): ['n', 'i', 'v', 'e', 'K']
list(reversed(seqTuple)): ['n', 'i', 'v', 'e', 'K']
list(reversed(seqRange)): [8, 7, 6, 5]
list(reversed(seqList)): [5, 3, 4, 2, 1]

56、round()

a)描述

原文:
Round a number to a given precision in decimal digits.
The return value is an integer if ndigits is omitted or None. Otherwise the return value has the same type as the number. ndigits may be negative.
中文:
將一個數(shù)字四舍五入到給定的十進(jìn)制精度寺董。
返回值是一個整數(shù),如果ndigit被省略或沒有。否則返回值的類型與數(shù)字相同猜揪。
詮釋:
round() 方法返回浮點數(shù) x 的四舍五入值坛梁,準(zhǔn)確的說保留值將保留到離上一位更近的一端(四舍六入)。
精度要求高的划咐,不建議使用該函數(shù)褐缠。

b)語法

round() 方法的語法:round( x [, n] )

c)參數(shù)

x:數(shù)字表達(dá)式公般。
n:表示從小數(shù)點位數(shù)官帘,其中 x 需要四舍五入,默認(rèn)值為 0揽浙。

d)返回值

返回浮點數(shù)x的四舍五入值状婶。

e)實例
print ("round(70.23456):", round(70.23456))
print ("round(56.659,1):", round(56.659,1))
print ("round(80.264, 2):", round(80.264, 2))
print ("round(100.000056, 3):", round(100.000056, 3))
print ("round(-100.000056, 3):", round(-100.000056, 3))

運行結(jié)果:

round(70.23456): 70
round(56.659,1): 56.7
round(80.264, 2): 80.26
round(100.000056, 3): 100.0
round(-100.000056, 3): -100.0

57、set()

a)描述

set() 函數(shù)創(chuàng)建一個無序不重復(fù)元素集,可進(jìn)行關(guān)系測試,刪除重復(fù)數(shù)據(jù)抓歼,還可以計算交集萄喳、差集减江、并集等。

b)語法

set 語法:class set([iterable])

c)參數(shù)

iterable -- 可迭代對象對象。

d)返回值

返回新的集合對象手蝎。

e)實例
x = set('kevin')
y = set('google')
print("x, y:",x, y)
print("x & y:",x & y)         # 交集
print("x | y:",x | y)         # 并集
print("x - y:",x - y)         # 差集

運行結(jié)果:

x, y: {'e', 'k', 'i', 'v', 'n'} {'e', 'g', 'l', 'o'}
x & y: {'e'}
x | y: {'e', 'k', 'i', 'v', 'o', 'n', 'g', 'l'}
x - y: {'n', 'v', 'k', 'i'}

58唠雕、setattr()

a)描述

原文:
Sets the named attribute on the given object to the specified value.
setattr(x, 'y', v) is equivalent to x.y = v
中文:
將給定對象上的命名屬性設(shè)置為指定值。
setattr(x, 'y', v) is equivalent to x.y = v
詮釋:
setattr() 函數(shù)對應(yīng)函數(shù) getattr()捕儒,用于設(shè)置屬性值冰啃,該屬性不一定是存在的。

b)語法

setattr() 語法:setattr(object, name, value)

c)參數(shù)

object:對象刘莹。
name:字符串阎毅,對象屬性。
value:屬性值点弯。

d)返回值

無扇调。

e)實例

實例1(對已存在的屬性進(jìn)行賦值):

class A(object):
    bar = 1
a = A()
print("getattr(a, 'bar'):",getattr(a, 'bar'))          # 獲取屬性 bar 值
print("setattr(a, 'bar', 5):",setattr(a, 'bar', 5))       # 設(shè)置屬性 bar 值
print("a.bar:",a.bar)

運行結(jié)果:

getattr(a, 'bar'): 1
setattr(a, 'bar', 5): None
a.bar: 5

實例2(如果屬性不存在會創(chuàng)建一個新的對象屬性,并對屬性賦值):

class A():
    name = "kevin"
a = A()
print("setattr(a, 'age', 28):",setattr(a, 'age', 28))
print("a.age:",a.age)

運行結(jié)果:

setattr(a, 'age', 28): None
a.age: 28

59抢肛、slice()

a)描述

slice() 函數(shù)實現(xiàn)切片對象狼钮,主要用在切片操作函數(shù)里的參數(shù)傳遞。

b)語法

slice 語法:
class slice(stop)
class slice(start, stop[, step])

c)參數(shù)

start:起始位置
stop:結(jié)束位置
step:間距

d)返回值

返回一個切片對象雌团。

e)實例
myslice = slice(5)    # 設(shè)置截取5個元素的切片
print("myslice:",myslice)
arr = range(10)
print("arr:",arr)
print("list(arr):",list(arr))
print("arr[myslice]:",arr[myslice])         # 截取 5 個元素
print("list(arr[myslice]):",list(arr[myslice]))         # 截取 5 個元素

運行結(jié)果:

myslice: slice(None, 5, None)
arr: range(0, 10)
list(arr): [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr[myslice]: range(0, 5)
list(arr[myslice]): [0, 1, 2, 3, 4]

60燃领、sorted()

a)描述

原文:
Return a new list containing all items from the iterable in ascending order.
A custom key function can be supplied to customize the sort order, and the reverse flag can be set to request the result in descending order.
中文:
返回一個新列表,其中包含按升序排列的iterable中的所有項锦援。
可以提供自定義鍵函數(shù)來定制排序順序猛蔽,還可以設(shè)置反轉(zhuǎn)標(biāo)志來按降序請求結(jié)果。
詮釋:
sorted() 函數(shù)對所有可迭代的對象進(jìn)行排序操作灵寺。
sort 與 sorted 區(qū)別:
sort 是應(yīng)用在 list 上的方法曼库,sorted 可以對所有可迭代的對象進(jìn)行排序操作。
list 的 sort 方法返回的是對已經(jīng)存在的列表進(jìn)行操作略板,而內(nèi)建函數(shù) sorted 方法返回的是一個新的 list毁枯,而不是在原來的基礎(chǔ)上進(jìn)行的操作。

b)語法

sorted 語法:sorted(iterable, key=None, reverse=False)

c)參數(shù)

iterable:可迭代對象叮称。
key:主要是用來進(jìn)行比較的元素种玛,只有一個參數(shù),具體的函數(shù)的參數(shù)就是取自于可迭代對象中瓤檐,指定可迭代對象中的一個元素來進(jìn)行排序赂韵。
reverse:排序規(guī)則,reverse = True 降序 挠蛉, reverse = False 升序(默認(rèn))祭示。

d)返回值

返回重新排序的列表谴古。

e)實例

實例1():

lst = [5, 2, 3, 1, 4]
print("sorted(lst):",sorted(lst))

運行結(jié)果:

sorted(lst): [1, 2, 3, 4, 5]

實例2(也可以使用 list 的 list.sort() 方法质涛。這個方法會修改原始的 list(返回值為None)稠歉。通常這個方法不如sorted()方便-如果你不需要原始的 list,list.sort()方法效率會稍微高一些):

lst = [5, 2, 3, 1, 4]
lst.sort()
print("lst:",lst)

運行結(jié)果:

lst: [1, 2, 3, 4, 5]

實例3(list.sort() 方法只為 list 定義汇陆,而 sorted() 函數(shù)可以接收任何的 iterable):

dic = {1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'}
print("sorted(dic):",sorted(dic))

運行結(jié)果:

sorted(dic): [1, 2, 3, 4, 5]

實例4(利用key進(jìn)行倒序排序):

example_list = [5, 0, 6, 1, 2, 7, 3, 4]
result_list = sorted(example_list, key=lambda x: x*-1)
print("result_list:",result_list)

運行結(jié)果:

result_list: [7, 6, 5, 4, 3, 2, 1, 0]

實例5(要進(jìn)行反向排序怒炸,也通過傳入第三個參數(shù) reverse=True):

example_list = [5, 0, 6, 1, 2, 7, 3, 4]
result_list = sorted(example_list, reverse=True)
print("result_list:",result_list)

運行結(jié)果:

result_list: [7, 6, 5, 4, 3, 2, 1, 0]

實例6(sorted 的應(yīng)用,也可以通過 key 的值來進(jìn)行數(shù)組/字典的排序):

array = [{"age":20,"name":"a"},{"age":25,"name":"b"},{"age":10,"name":"c"}]
array = sorted(array,key=lambda x:x["age"])
print("array:",array)

運行結(jié)果:

array: [{'age': 10, 'name': 'c'}, {'age': 20, 'name': 'a'}, {'age': 25, 'name': 'b'}]

實例7(多列排序瞬测,先按照成績降序排序横媚,相同成績的按照名字升序排序):

d1 = [{'name':'alice', 'score':38}, {'name':'bob', 'score':18}, {'name':'darl', 'score':28}, {'name':'christ', 'score':28}]
l = sorted(d1, key=lambda x:(-x['score'], x['name']))
print("l:",l)

運行結(jié)果:

l: [{'name': 'alice', 'score': 38}, {'name': 'christ', 'score': 28}, {'name': 'darl', 'score': 28}, {'name': 'bob', 'score': 18}]
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市月趟,隨后出現(xiàn)的幾起案子灯蝴,更是在濱河造成了極大的恐慌,老刑警劉巖孝宗,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件穷躁,死亡現(xiàn)場離奇詭異,居然都是意外死亡因妇,警方通過查閱死者的電腦和手機(jī)问潭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來婚被,“玉大人狡忙,你說我怎么就攤上這事≈沸荆” “怎么了灾茁?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長谷炸。 經(jīng)常有香客問我北专,道長,這世上最難降的妖魔是什么旬陡? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任拓颓,我火速辦了婚禮,結(jié)果婚禮上描孟,老公的妹妹穿的比我還像新娘驶睦。我一直安慰自己,他們只是感情好匿醒,可當(dāng)我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布啥繁。 她就那樣靜靜地躺著,像睡著了一般青抛。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上酬核,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天蜜另,我揣著相機(jī)與錄音适室,去河邊找鬼。 笑死举瑰,一個胖子當(dāng)著我的面吹牛捣辆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播此迅,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼汽畴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了耸序?” 一聲冷哼從身側(cè)響起忍些,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎坎怪,沒想到半個月后罢坝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡搅窿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年嘁酿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片男应。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡闹司,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出沐飘,到底是詐尸還是另有隱情游桩,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布薪铜,位于F島的核電站众弓,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏隔箍。R本人自食惡果不足惜谓娃,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蜒滩。 院中可真熱鬧滨达,春花似錦、人聲如沸俯艰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽竹握。三九已至画株,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背谓传。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工蜈项, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人续挟。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓紧卒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親诗祸。 傳聞我的和親對象是個殘疾皇子跑芳,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,494評論 2 348