日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

69讲入门python_Python入门,一定要吃透这69个内置函数

發布時間:2024/9/27 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 69讲入门python_Python入门,一定要吃透这69个内置函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

內置函數就是Python預先定義的函數,這些內置函數使用方便,無需導入,直接調用,大大提高使用者的工作效率,也更便于程序的閱讀。截止到Python版本3.9.1,Python一共提供了69個內置函數。

如果你還沒入門,或剛剛入門Python,那么,這篇文章非常適合你。為了方便記憶,木木老師會將這些內置函數分類介紹給大家。數學運算(7個)

類型轉換(24個)

序列操作(8個)

對象操作(9個)

反射操作(8個)

變量操作(2個)

交互操作(2個)

文件操作(1個)

編譯執行(5個)

裝飾器(3個)

數學運算(7個)

abs:求數值的絕對值

print(abs(-2)) # 絕對值:2

divmod:返回兩個數值的商和余數print(divmod(20,3))?#?求商和余數:(6,2)

max:返回可迭代對象中的元素中的最大值或者所有參數的最大值

print(max(7,3,15,9,4,13)) #求最大值:15

min:返回可迭代對象中的元素中的最小值或者所有參數的最小值print(min(5,3,9,12,7,2))?#求最小值:2

pow:返回兩個數值的冪運算值或其與指定整數的模值

print(pow(10,2,3)) # 如果給了第三個參數. 表示最后取余:1

round:對浮點數進行四舍五入求值print(round(2.675,?2))?#?五舍六入:2.67

sum:對元素類型是數值的可迭代對象中的每個元素求和

print(sum([1,2,3,4,5,6,7,8,9,10])) # 求和:55

類型轉換(24個)

bool:根據傳入的參數的邏輯值創建一個新的布爾值print(bool(0))?#?數值0、空序列等值為:False

int:根據傳入的參數創建一個新的整數

print(int(3.6)) # 整數:3

float:根據傳入的參數創建一個新的浮點數print(float?(3))?#?浮點數:3.0

complex:根據傳入參數創建一個新的復數

print(complex (1,2)) # 復數:1+2j

str:將數據轉化為字符串print(str(123)+'456')?#123456

bytearray:根據傳入的參數創建一個新的字節數組

ret = bytearray('alex' ,encoding ='utf-8')print(ret[0]) #97print(ret) #bytearray(b'alex')ret[0] = 65 #把65的位置A賦值給ret[0]print(str(ret)) #bytearray(b'Alex')

bytes:根據傳入的參數創建一個新的不可變字節數組bs?=?bytes('今天吃飯了嗎',?encoding='utf-8')print(bs)?#b'\xe4\xbb\x8a\xe5\xa4\xa9\xe5\x90\x83\xe9\xa5\xad\xe4\xba\x86\xe5\x90\x97'

memoryview:根據傳入的參數創建一個新的內存查看對象

v = memoryview(b'abcefg')print(v[1]) # 98

ord:返回Unicode字符對應的整數print(ord('中'))?#?'中'字在編碼表中的位置:20013

chr:返回整數所對應的Unicode字符

print(chr(65)) # 已知碼位求字符:A

bin:將整數轉換成2進制字符串print(bin(10))?#?二進制:0b1010

oct:將整數轉化成8進制數字符串

print(oct(10)) # 八進制:0o12

hex:將整數轉換成16進制字符串print(hex(10))?#?十六進制:0xa

tuple:根據傳入的參數創建一個新的元組

print(tuple([1,2,3,4,5,6])) # (1, 2, 3, 4, 5, 6)

list:根據傳入的參數創建一個新的列表print(list((1,2,3,4,5,6)))?#?[1,?2,?3,?4,?5,?6]

dict:根據傳入的參數創建一個新的字典

print(dict(a = 1,b = 2)) # 創建字典: {'b': 2, 'a': 1}

range:根據傳入的參數創建一個新的range對象for?i?in?range(15,-1,-5):print(i)#?15#?10#?5#?0

set:根據傳入的參數創建一個新的集合

a = set(range(10))print(a) # 創建集合:{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

frozenset:根據傳入的參數創建一個新的不可變集合a?=?frozenset(range(10))print(a)?#frozenset({0,?1,?2,?3,?4,?5,?6,?7,?8,?9})

enumerate:根據可迭代對象創建枚舉對象

lst = ['one','two','three','four','five']for index, el in enumerate(lst,1): # 把索引和元素一起獲取,索引默認從0開始. 可以更改print(index)print(el)# 1# one# 2# two# 3# three# 4# four# 5# five

iter:根據傳入的參數創建一個新的可迭代對象lst?=?[1,?2,?3]for?i?in?iter(lst):print(i)#?1#?2#?3

slice:根據傳入的參數創建一個新的切片對象

lst = '你好啊'it = reversed(lst) # 不會改變原列表. 返回一個迭代器, 設計上的一個規則print(list(it)) #['啊', '好', '你']lst = [1, 2, 3, 4, 5, 6, 7]print(lst[1:3:1]) #[2,3]s = slice(1, 3, 1) # 切片用的print(lst[s]) #[2,3]

super:根據傳入的參數創建一個新的子類和父類關系的代理對象class?A:def?add(self,?x):y?=?x+1print(y)class?B(A):def?add(self,?x):super().add(x)b?=?B()b.add(2)?#?3

object:創建一個新的object對象

class A:passprint(issubclass(A,object)) #默認繼承object類 # Trueprint(dir(object))# ['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']

序列操作(8個)

all:判斷可迭代對象的每個元素是否都為True值print(all([1,'hello',True,9]))?#True

any:判斷可迭代對象的元素是否有為True值的元素

print(any([0,0,0,False,1,'good'])) #True

filter:使用指定方法過濾可迭代對象的元素def?is_odd(n):return?n?%?2?==?1newlist?=?filter(is_odd,?[1,?2,?3,?4,?5,?6,?7,?8,?9,?10])print(newlist)?#?[1,?3,?5,?7,?9]

map:使用指定方法去作用傳入的每個可迭代對象的元素,生成新的可迭代對象

def f(i):return ilst = [1,2,3,4,5,6,7,]it = map(f, lst) # 把可迭代對象中的每一個元素傳遞給前面的函數進行處理. 處理的結果會返回成迭代器print(list(it)) #[1, 2, 3, 4, 5, 6, 7]

next:返回可迭代對象中的下一個元素值it?=?iter([1,?2,?3,?4,?5])while?True:try:x?=?next(it)print(x)except?StopIteration:break#?1#?2#?3#?4#?5

reversed:反轉序列生成新的可迭代對象

print(list(reversed([1,2,3,4,5]))) # [5, 4, 3, 2, 1]

sorted:對可迭代對象進行排序,返回一個新的列表a?=?[5,3,4,2,1]print(sorted(a,reverse=True))?#?[5,?4,?3,?2,?1]

zip:聚合傳入的每個迭代器中相同位置的元素,返回一個新的元組類型迭代器

my_list = [11,12,13]my_tuple = (21,22,23)print(list(zip(my_list,my_tuple))) # [(11, 21), (12, 22), (13, 23)]

對象操作(9個)

help:返回對象的幫助信息print(help(str))?#查看字符串的用途

dir:返回對象或者當前作用域內的屬性列表

print(dir(tuple)) #查看元組的方法

id:返回對象的唯一標識符s?=?'alex'print(id(s))?#?139783780730608

hash:獲取對象的哈希值

s = 'alex'print(hash(s)) #-168324845050430382lst = [1, 2, 3, 4, 5]print(hash(lst)) #報錯,列表是不可哈希的

type:返回對象的類型,或者根據傳入的參數創建一個新的類型dict?=?{'Name':?'Zara',?'Age':?7}print('Variable?Type?:?%s'?%?type?(dict))?#?Variable?Type?:?

len:返回對象的長度

mylist = ['apple', 'orange', 'cherry']x = len(mylist)print(x) # 3

ascii:返回對象的可打印表字符串表現方式s?=?5print(ascii(s))?#?5format:格式化顯示值s?=?'hello?world!'print(format(s,?'^20'))?#居中print(format(s,?'<20'))?#左對齊print(format(s,?'>20'))?#右對齊#?hello?world!#?hello?world!#?hello?world!

vars:返回當前作用域內的局部變量和其值組成的字典,或者返回對象的屬性列表

class Person:name = 'John'age = 36country = 'norway'x = vars(Person)print(x)# {'__module__': '__main__', 'name': 'Bill', 'age': 63, 'country': 'USA', '__dict__': , '__weakref__': , '__doc__': None}

反射操作(8個)

__import__:動態導入模塊import?osname?=?input('請輸入你要導入的模塊:')__import__(name)?#?可以動態導入模塊

isinstance:判斷對象是否是類或者類型元組中任意類元素的實例

arg=123print(isinstance(arg, int)) # 輸出True

issubclass:判斷類是否是另外一個類或者類型元組中任意類元素的子類class?A:passclass?B(A):passprint(issubclass(B,A))?#?返回?True

hasattr:檢查對象是否含有屬性

class Coordinate:x = 10y = -5z = 0point1 = Coordinate()print(hasattr(point1, 'x'))print(hasattr(point1, 'y'))print(hasattr(point1, 'z'))print(hasattr(point1, 'no')) # 沒有該屬性# True# True# True# False

getattr:獲取對象的屬性值class?Person():age?=?14Tom?=?Person()print(getattr(Tom,'age'))?#?14

setattr:設置對象的屬性值

class A():name = '吊車尾'a = A()setattr(a, 'age', 24)print(a.age) # 24

delattr:刪除對象的屬性class?Person:def?__init__(self,?name,?age):self.name?=?nameself.age?=?agetom?=?Person('Tom',?35)print(dir(tom))?#?['__doc__',?'__init__',?'__module__',?'age',?'name']delattr(tom,?'age')print(dir(tom))?#?['__doc__',?'__init__',?'__module__',?'name']s

callable:檢測對象是否可被調用

a = 10print(callable(a)) #False 變量a不能被調用

變量操作(2個)

globals:返回當前作用域內的全局變量和其值組成的字典x?=?'hello'a?=?8888888print(globals())?#返回一個全局變量的字典,包括所有導入的變量x,a#?{'__name__':?'__main__',?'__doc__':?None,?'__package__':?None,?'__loader__':?<_frozen_importlib_external.sourcefileloader>,?'__spec__':?None,?'__annotations__':?{},?'__builtins__':?,?'__file__':?'D:/Pythonproject/111/global.py',?'__cached__':?None,?'x':?'hello',?'a':?8888888}

locals:返回當前作用域內的局部變量和其值組成的字典

print(locals())# {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.sourcefileloader object at>, '__spec__': None, '__annotations__': {}, '__builtins__': , '__file__': '/Users/pankaj/Documents/github/journaldev/Python-3/basic_examples/python_locals_example.py', '__cached__': None}

交互操作(2個)

print:向標準輸出對象打印輸出print(1,2,3)?#?1?2?3

input:讀取用戶輸入值

a = input('請輸入你的姓名') #輸入:張三print(a) # 張三

文件操作(1個)

open:使用指定的模式和編碼打開文件,返回文件讀寫對象f?=?open('file',mode='r',encoding='utf-8')f.read()f.close()

編譯執行(5個)

compile:將字符串編譯為代碼或者AST對象,使之能夠通過exec語句來執行或者eval進行求值

code = 'for i in range(3): print(i)'com = compile(code, '', mode='exec')exec(com)# 0# 1# 2

eval:執行動態表達式求值code?=?'5+6+7'com?=?compile(code,?'',?mode='eval')print(eval(com))?#?18

exec:執行動態語句塊

s = 'for i in range(5): print(i)'a = exec(s)# 0# 1# 2# 3# 4

repr:返回一個對象的字符串表現形式(給解釋器)class?test:def?__init__(self,name,age):self.age?=?ageself.name?=?namedef?__repr__(self):return?'Class_Test[name='+self.name+',age='+str(self.age)+']'t?=?test('Zhou',30)print(t)?#?Class_Test[name=Zhou,age=30]

breakpoint:暫停腳本的執行,允許在程序的內部手動瀏覽

裝飾器(3個)

property:標示屬性的裝飾器

class C:def __init__(self):self._name = ''@propertydef name(self):'''i'm the 'name' property.'''return self._name@name.setterdef name(self,value):if value is None:raise RuntimeError('name can not be None')else:self._name = value

classmethod:標示方法為類方法的裝飾器class?C:@classmethoddef?f(cls,arg1):print(cls)print(arg1)

staticmethod:標示方法為靜態方法的裝飾器

class Student(object):def __init__(self,name):self.name = name@staticmethoddef sayHello(lang):print(lang)if lang == 'en':print('Welcome!')else:print('你好!')

收集不易,記得給木木一個小反饋哦~

PS:由于空格原因,這些代碼直接復制運行不了哦~

總結

以上是生活随笔為你收集整理的69讲入门python_Python入门,一定要吃透这69个内置函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。