python內置函數

abs()函數

用於返回數字的絕對值。python

語法:abs( x )

x -- 數值表達式,能夠是整數,浮點數,複數。
示例:
a = 3.14
b = -7.36
print(abs(a))  # 3.14
print(abs(b))  # 7.36

all()函數

用於判斷給定的可迭代參數中的全部元素是否都爲True,若是都爲True則返回True,只要有一個爲False則返回False。git

通常來講,除了0、空、None 、False等值外都算True。
語法: all(iterable)

iterable -- 元組或列表
示例:

判斷可迭代參數中的全部元素是否都爲True:express

a = []
b = ()
c = (1, 2, "", 3)
d = [0, 1, 2]

print(all(a))  # True, 空列表返回值爲True
print(all(b))  # True, 空元組返回值爲True
print(all(c))  # False, 有一個空元素
print(all(d))  # False, 有一個元素0
注意:空元組、空列表返回值爲True。

any()函數

用於判斷給定的可迭代參數是否所有爲 False,若是所有爲False,則返回False。若是有一個爲True,則返回True。app

語法: any(iterable)

iterable -- 元組或列表
示例:
a = ['x', 'k', 'd']
b = ['', 123, "kk"]
c = (0, '', False)
d = ('xkd', 0, 123)

print(any(a))  # True
print(any(b))  # True,一個爲空,也返回True
print(any(c))  # False,都爲False才返回False
print(any(d))  # True,一個爲0,也返回True

type()函數

返回對象的類型。ide

語法: type(object)
示例:
a = 123
b = 'xkd'
c = [1, 2, 3]
d = (1, 2, 3)

print(type(a))  # <class 'int'>
print(type(b))  # <class 'str'>
print(type(c))  # <class 'list'>
print(type(d))  # <class 'tuple'>

id()函數

用於獲取對象的內存地址。函數

語法:id(object)
示例:
a = 123
b = 'xkd'
print(id(a))  # 8791098294336
print(id(b))  # 31265904

ascii()函數

返回任何對象的可讀版本,將使用轉義字符替換任何非ascii字符。ui

語法:ascii(object)

object -- 對象
示例:
a = "xkd"
b = "俠課島"

print(ascii(a))  # 'xkd'
print(ascii(b))  # '\u4fa0\u8bfe\u5c9b'

bin()函數

返回指定整數的二進制版本,結果將以0b爲前綴開頭。編碼

語法: bin(number)

number -- int整型或者long int長整型
示例:
a = 100
b = 1000
print(bin(a))  # 0b1100100
print(bin(b))  # 0b1111101000

int()函數

用於將一個字符串或數字轉換爲整型。code

語法:int(n, base=10)

n -- 字符串或數字
base -- 進制數,默認十進制
示例:
a = 1.02
b = '123'
print(int(a))  # 1

print(int(b))  # 123

print(int())  # 沒有參數時,輸出結果爲0

str()函數

將指定的值轉換爲字符串。orm

語法: str(object, encoding=encoding, errors=errors)
示例:
a = 123
print(type(a))  # <class 'int'>

new_a = str(a)
print(new_a, type(new_a))  # 123 <class 'str'>

bool()函數

返回指定對象的布爾值,若是沒有參數,則返回 False。

語法: bool(object)
示例:
print(bool(0))  # False

print(bool(1))  # True

print(bool())  # False,不帶參返回False

list()函數

建立一個列表對象。列表對象是有序且可更改的集合。

語法:list(iterable)
示例:
# 字符串
a = "str"
lst = list(a) 
print(lst, type(lst))  # ['s', 't', 'r'] <class 'list'>


# 元組
tup = (1, 2, 3)
lst1 = list(tup)
print(lst1, type(lst1))  # [1, 2, 3] <class 'list'>

tuple ()函數

建立一個元組對象。

語法: tuple(iterable)
示例:
lst = ['a', 'b']
tup = tuple(lst)
print(tup, type(tup))  # ('a', 'b') <class 'tuple'>

dict()函數

建立一個字典。

語法: class dict(**kwarg)
      class dict(mapping, **kwarg)
      class dict(iterable, **kwarg)

**kwargs -- 關鍵字
mapping -- 元素的容器
iterable -- 可迭代對象
示例:
# 定義空字典
dic = dict()

dic1 = dict(a=1, b=2, c=3)  # 傳入關鍵字
print(dic1)  # {'a': 1, 'b': 2, 'c': 3}

dic2 = dict([('a', 1), ('b', 2), ('c', 3)])  # # 可迭代對象方式來構造字典
print(dic2)  # {'a': 1, 'b': 2, 'c': 3}

dic3 = dict(zip(['a', 'b', 'c'], [1, 2, 3]))  # 映射函數方式來構造字典
print(dic3)  # {'a': 1, 'b': 2, 'c': 3}

bytearray()函數

能夠將對象轉換爲bytearray對象,或者建立指定大小的空bytearray對象。

語法: bytearray(x, encoding, error)

x -- 若是是整數,則將建立指定大小的空bytearray對象。若是是字符串,則按照指定的encoding將字符串轉換爲字節序列。
encoding -- 字符串的編碼
error -- 指定編碼失敗時要執行的操做
示例:
print(bytearray())  # bytearray(b'')

print(bytearray(10))  # bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')

print("xkd")  # xkd

print(bytearray([1, 2, 3]))  # bytearray(b'\x01\x02\x03')

bytes()函數

能夠將對象轉換爲字節對象,或建立指定大小的空字節對象。返回一個bytes對象。

語法: bytes(x, encoding, error)
示例:
a = bytes([1, 2, 3])
b = bytes("xkd", "ascii")

print(a, type(a))  # b'\x01\x02\x03' <class 'bytes'>
print(b, type(b))  # b'xkd' <class 'bytes'>

callable()函數

用於檢查一個函數是否可調用。若是指定的對象是可調用的,則返回True,不然返回False。

語法: callable(object)
示例:
a = 'xkd'

def b():
    pass

print(callable(a))  # False
print(callable(b))  # True

chr()函數

用一個整數做參數,返回一個對應的字符。

語法: chr(n)

n -- 表示有效Unicode碼位的整數
示例:
a = 97
b = 1000

print(chr(a))   # a
print(chr(b))   # Ϩ

classmethod修飾符

classmethod 修飾符對應的函數不須要實例化,不須要 self 參數,但第一個參數須要是表示自身類的 cls 參數,能夠來調用類的屬性,類的方法,實例化對象等。

語法: classmethod
示例:
class Test():
    n = 1
    def show1(self):
        print("show1")
    @classmethod
    def show2(cls):
        print("show2")
        print(cls.n)
        cls().show1()  # 調用show1方法

Test.show2()

'''
show2
1
show1
'''

compile()函數

將一個字符串編譯爲字節代碼。

語法: compile(source, filename, mode, flag, dont_inherit, optimize)

source  --  字符串或者AST對象
filename  -- 代碼文件名稱,若是不是從文件讀取代碼則傳遞一些可辨認的值
mode  -- 指定編譯代碼的種類。能夠指定爲 exec, eval, single
flags  -- 變量做用域,局部命名空間,若是被提供,能夠是任何映射對象
flags和dont_inherit是用來控制編譯源碼時的標誌。
示例:
com = compile('print(10)', 'test', 'exec')
print(com)  # <code object <module> at 0x000000000219BDB0, file "test", line 1>
exec(com)  # 10

complex()函數

用於建立一個值爲 real + imag * j 的複數或者轉化一個字符串或數爲複數。若是第一個參數爲字符串,則不須要指定第二個參數。

語法: complex(real, imaginary)

real -- int, long, float或字符串
imag -- int, long, float
示例:
a = complex("1+2j")  # 注意+號兩邊不能有空格,不然會報錯
print(a)  # (1+2j)


b = complex(1, 2)
print(b)  # (1+2j)

c = complex("1")   # 若是第一個參數爲字符串,則不須要指定第二個參數。
print(c)  # (1+0j)

d = complex("2j")
print(d)  # 2j

getattr()函數

用於返回指定對象的指定屬性的值。

語法: getattr(object, attribute, default)

object -- 對象。
attribute -- 字符串,對象屬性。
default -- 默認返回值,若是不提供該參數,在沒有對應屬性時,將觸發 AttributeError
示例:
class Test:
    id = 1
    name = "NiNi"
    age = 18
    sex = 'woman'

result = getattr(Test, 'age')
print(result)  # 18

setattr()函數

設置指定對象的指定屬性的值。

語法: setattr(object, attribute, value)

object -- 對象
attribute -- 字符串,對象屬性
value -- 屬性值
示例:
class Test:
    id = 1
    name = "Angle"
    age = 18

print(Test.age)  # 18

setattr(Test, 'age', 20)

print(Test.age)  # 20

delattr ()函數

從指定的對象中刪除指定的屬性。delattr(x, 'foobar') 相等於 del x.foobar

語法: delattr(object, name)

object  -- 對象
name -- 必須是對象的屬性
示例:
class Test:
    id = 1
    name = "NiNi"
    age = 18
    sex = 'woman'

print(Test.age)  # 18

# 刪除age屬性
delattr(Test, 'age')

print(Test.age)
# AttributeError: type object 'Test' has no attribute 'age'

hasattr()函數

用於判斷對象是否包含對應的屬性。

語法: hasattr(object, attribute)

object -- 對象
name -- 字符串,屬性名
示例:
class Test:
    id = 1
    name = "NiNi"
    age = 18
    sex = 'woman'

result = hasattr(Test, "age")
print(result)  # True

result1 = hasattr(Test, "kind")
print(result1)  # False

dir()函數

返回指定對象的全部屬性和方法,而不返回值。此函數將返回全部屬性和方法,甚至是全部對象的默認內置屬性。

語法: dir(object)

object -- 對象、變量、類型
示例:
print(dir())  # 得到當前模塊的屬性列表

# ['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']

divmod()函數

接收兩個數字類型(非複數)參數,返回一個包含商和餘數的元組(a // b, a % b)。

語法: divmod(divident, divisor)

divident -- 數字,非複數
divisor -- 數字,非複數
示例:
print(divmod(7, 3))  # (2, 1)

print(divmod(8, 4))  # (2, 0)

print(divmod(9, -3))  # (-3, 0)

enumerate()函數

用於將一個可遍歷的數據對象(如列表、元組或字符串)組合爲一個索引序列,同時列出數據和數據下標,通常用在 for 循環當中。

語法: enumerate(sequence, start)

iterable -- 一個序列、迭代器或其餘支持迭代對象
start -- 下標起始位置
示例:
tup = ('x', 'k', 'd')
for i in enumerate(tup):
    print(i)

'''
(0, 'x')
(1, 'k')
(2, 'd')
'''
lst = ['a', 'b', 'c']
for i in enumerate(lst):
    print(i)

'''
(0, 'a')
(1, 'b')
(2, 'c')
'''

eval()函數

用來執行一個字符串表達式,並返回表達式的值。

語法: eval(expression, globals, locals)

expression -- 表達式
globals -- 變量做用域,全局命名空間,若是被提供,則必須是一個字典對象
locals -- 變量做用域,局部命名空間,若是被提供,能夠是任何映射對象
示例:
a = 10
print(eval('a + 1'))  # 11

eval('print(a+1)')  # 11

exec ()函數

exec 執行儲存在字符串或文件中的 Python 語句,相比於 eval,exec能夠執行更復雜的 Python 代碼。

語法: exec(object, globals, locals)

object -- 表示須要被指定的Python代碼
globals -- 表示全局命名空間,存放全局變量。若是被提供,則必須是一個字典對象
locals -- 表示當前局部命名空間,存放局部變量。若是被提供,能夠是任何映射對象
示例:
# 單行語句字符串
exec('print("xkd")')  # xkd


# 多行語句字符串
exec("""for i in range(5):
            print (i)
""")

'''
輸出:
0
1
2
3
4
'''

map()函數

根據提供的函數對指定序列作映射。

語法:map(function, iterable, ...)

function -- 函數
iterable -- 一個或多個序列
示例:
def test(n):
    return n

lst = ['x', 'k', 'd']

result = map(test, lst)
print(result) # <map object at 0x0000000001E99648>
for i in result:
    print(i)

'''
x
k
d
'''

filter()函數

用於過濾序列,過濾掉不符合條件的元素,返回一個迭代器對象,若是要轉換爲列表,能夠使用 list() 來轉換。

語法: filter(function, iterable)

function -- 判斷函數
iterable -- 可迭代對象
示例:
def show(x):
    if x > 5:
        return True
    else:
        False

result = filter(show, range(10))

for i in result:
    print(i)
    
'''
6
7
8
9
'''

float()函數

用於將整數和字符串轉換成浮點數。

語法: float(value)

value  --  整數或字符串
示例:
# 整數
print(float(10))  # 10.0

# 字符串
print(float('20'))  # 20.0

format格式化函數

將指定的值格式化爲指定的格式。

語法: format(value, format)
示例:
# 默認順序
print("{}{}".format("hello", "xkd"))  # xkd

# 指定位置
print("{0}{1}{2}".format("x", "k", "d"))  # xkd

print("{1}{0}{2}".format("x", "k", "d"))  # kxd

print("{2}{1}{0}".format("x", "k", "d"))  # dkx

frozenset()函數

返回一個凍結的集合,凍結後集合不能再添加或刪除任何元素。

語法: frozenset(iterable)

iterable -- 可迭代的對象,好比列表、字典、元組等
示例:
print(frozenset('xkd'))  # frozenset({'k', 'd', 'x'})

print(frozenset(range(5)))  # frozenset({0, 1, 2, 3, 4})

print(frozenset([0, 1, 2, 3]))   # frozenset({0, 1, 2, 3})

globals()函數

會以字典類型返回當前位置的所有全局變量。

語法: globals()
示例:
x = globals()   # globals 函數返回一個全局變量的字典,包括全部導入的變量
print(x)
  
# {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000000002101388>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'C:/Users/lu/PycharmProjects/haha/eefile/test.py', '__cached__': None, 'x': {...}}

hash()函數

用於判斷對象是否包含對應的屬性。

語法: hash(object)
示例:
# 整數
print(hash(10))  # 10

# 字符串
print(hash('xkd'))  # -5490875864724092212

# 集合
print(hash(str([1, 2, 3])))  # 8155134905582437262

# 字典
print(hash(str(sorted({'a': 1}))))  # -7283481375873243607

repr()函數

repr() 函數將對象轉化爲供解釋器讀取的形式。

語法: repr(object)
示例:
a = "xkd"
print(repr(a))  # 'xkd'

lst = [1, 2, 3]
print(repr(lst))  # [1, 2, 3]

round()函數

返回一個浮點數,它是指定數字的舍入版本(四捨五入),具備指定的小數位數。默認的小數位數爲0,表示該函數將返回最接近的整數。

語法: round(number, digits)
number -- 數字表達式
digits -- 表示從小數點位數,其中number須要四捨五入,默認值爲0
示例:
print(round(3.1415926, 3))  # 3.142

print(round(3.52))  # 4

range()函數

返回一個數字序列,默認狀況下從0開始,並遞增1(默認狀況下),並以指定的數字結束。

語法: range(start, stop, step)

start -- 計數從 start 開始,默認是從 0 開始
stop -- 計數到 stop 結束,但不包括 stop
step -- 步長,默認爲1
示例:
# 建立一個列表
print(list(range(10)))  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


for i in range(5):
    print(i)  # 0 1 2 3 4

for i in range(0, 5, 2):
    print(i)  # 0 2 4

min()函數

返回具備最低值的項,或具備可迭代值中最低值的項。

語法:min(n1, n2, n3, ...)
示例:
lst = [1, 5, 74, 3, 42]

print(min(lst))  # 1

print(min(3, 8, 36))  # 3

max()函數

返回具備最高值的項目,或具備可迭代值中具備最高值的項目。若是值是字符串,則按字母順序進行比較。

語法:max(n1, n2, n3, ...)
示例:
lst = [1, 5, 74, 3, 42]

print(max(lst))  # 74

print(max(3, 8, 36))  # 36

sum()函數

用於在迭代中進行求和計算。

語法: sum(iterable, start)

iterable -- 可迭代對象
start -- 指定相加的參數,若是沒有設置這個值,默認爲0
示例:
a = [0, 1, 2, 3, 4, 5]
print(sum(a))  # 15


# 列表計算總和後,再加10
print(sum(a, 10))  # 25

參考:https://www.9xkd.com/

相關文章
相關標籤/搜索