Python內建函式

2022-06-12 04:48:08 字數 4341 閱讀 4657

coding:utf-8

內建函式操作

!usr/bin/env python

1.locals()和globals()

def func():

x=1y=2

print(locals())

print(globals())

func()

2.eval, exec 和 compile

print(123)

"print(456)"#字串

eval("print(456)")#吧字串轉換成python**去執行(有返回值)

exec("print(789)")#吧字串轉換成python**去執行(無返回值)

num = eval('4+5+6')#執行了,有返回值

print(num)

num = exec('4+5+6')#執行了,沒有返回值

print(num)

# compile#做編譯

com=compile('1+2+3','',mode = 'eval')#節省時間

print(eval(com))

print(eval('1+2+3'))#這句效果和上面的compile()效果一樣

3.print

print('123',end='')#不換行

print('456',end='')

print(1,2,3)

print(1,2,3,4,5,6,sep=',')

print()函式的小例子

import time

import sys

for i in range(0,101,2):

time.sleep(0.1)

char_num = i//2 #列印多少個#

per_str = '\r%s%% : %s' % (i, '*' * char_num)

print(per_str,end='', file=sys.stdout, flush=true)

import sys

for i in range(0, 101, 4):

time.sleep(0.1)

char_num = i // 2

per_str = '\r%s%% : %s' % (i, '*' * char_num)

print(per_str, file=sys.stdout, flush=true)

4.input()

5.type()

6.hash

print(hash('asdsffd'))#一開始幾個都是不變的,,然後重新執行一次就變了

print(hash('asdsffd'))

print(hash('asdsffd'))

print(hash('asdsffd'))

print(hash('asdsffd'))

print(hash((1,2,3,4)))

7.open

r,w,a,r+,w+,a+(都可以加b)

f=open('tmp','r+')#r+開啟檔案

print(f.read(3))#如果讀了在寫,追加

f.seek(5)#如果seek指定了游標的位置,就從該位置開始覆蓋這寫

f.write('aaaaaa')#如果直接寫,從頭覆蓋

f.close()

8.__import__()

import os

import sys

import time

# 9.callable:檢視能不能呼叫

print(callable(123))#數字不能呼叫結果就是false

print(callable(open))#函式可以呼叫就返回true

10.dir 檢視資料型別的方法

print(dir(__builtins__))#看著報錯,,但其實不報錯

print(dir(int))

print(dir(list))

print(dir(0))#和int一樣

print(set(dir(list))-set(dir(tuple)))

11.num

num1=int(123)

num2=int(12.3)#強制轉換成int型別

print(num1,num2)

12.取商/餘

print(divmod(7,3))

13.計算最小值

print(min(1,2,3,4))

print(min([5,6]))

13.計算最大值

print(max(1,2,3,4))

print(max([5,6]))

14.sum求和

print(sum(1,2,3,4))#出錯了,引數是序列,雜湊不行

print(sum([5,6]))

print(sum((1,2,3,4)))

以下的兩個方式是一樣的

print(1+2)

print(int(1).__add__(2))

15.round精確度

print(round(3.1415926,2))#保留兩位

16.pow()冪運算

print(pow(2,3))

print(2**3)

17.和資料結構相關的

1.reversed()順序的反轉

l=[1,2,3,4]

print(list(reversed(l)))#是生成了乙個新的列表,沒有改變原來的列表(以後能不用reversed就不用reversed,用reverse)

# l.reverse()#在現在的列表的基礎上修改了,修改的是原來的列表

print(l)

2.slice切片

3.format()#除了格式化以外的作業

print(format('test','<20'))

print(format('test','>40'))

print(format('test','^40'))

4.bytes

s='你好'

sb=bytes(s,encoding='utf-8')

print(sb)

print(sb.decode('utf-8'))

sb2=bytearray(s,encoding='utf-8')

sb2[0]=229 #修改 了解就好

print(sb2.decode('utf-8'))

print(sb2)

print(sb2[0])

5.repr

print(repr('1234'))

print(repr(1234))

print('name:%r'%('egon'))#你怎麼傳進去的就按什麼格式列印出來了

6.set和frozenset(不可變的集合)就像list和tuple

7.enumerate

l=['a','b']

for i in enumerate(l):

print(i)

for i ,j in enumerate(l):

print(i,j)

8.all和any

print(all([1,2,3]))

print(all([0,2,3]))#因為0是false

print(any([1,2,3]))

print(any([0,2,3]))

9.zip()

l=[1,2,3]

l2=[4,5,6,7,8]

print(zip(l,l2))

print(list(zip(l,l2)))

l3=print(list(zip(l,l3)))

10.sort和sorted

l=[1,3,5,-2,-6]

l.sort()

print(l)

l2=[1,3,5,-2,-6]

print(sorted(l2))

print(sorted(l2,key=abs))

print(sorted(l2,key=abs,reverse=true))#預設從小到大排序,修改為true,則從大到小排序

11.map():我要對我的列表當中的每乙個值去做函式裡面的操作

l=[1,2,3,4,5]

def pow2(x):

return x*x

print(list(map(pow2,l)))

12.filter():從乙個列表當中找到所有符合篩選條件的,在組成乙個新列表

def aaa(x):

return x%2==1

ret=list(filter(aaa,[1,2,54,3,6,8,17,9]))

print(ret)

python重寫內建函式 python 內建函式

說明 zip 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的列表。如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 號操作符,可以將元組解壓為列表。語法 zip iterable1,iterable2,引數 iterable 乙個或多...

python內建函式簡稱 Python內建函式詳解

此文參考python文件,然後結合自己的理解,寫下來,一方面方便自己,讓自己好好學習,順便回憶回憶 另一方面,讓喜歡的盆友也參考一下。經查詢,3.6版本總共有68個內建函式,主要分類如下 數 算 7個 型別轉換 24個 序列操作 8個 物件操作 9個 反射操作 8個 變數操作 2個 互動操作 2個 ...

python內建函式使用 python內建函式使用

eval函式執行python表示式,有返回值 eval 1 2 3 4 5 exec函式執行的是python語句,沒有返回值 exec print 123 將字串型別的 編碼.物件能夠通過exec語句來執行或者eval 進行求值,c只是編譯,不執行 code for i in range 10 pr...