欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python内置方法1

程序员文章站 2022-07-16 23:16:45
python内置方法1 print(all([0,-1,1]))#元素一假则假 print(any([0,-1,1]))#元素一真则真 结果为: false tr...

python内置方法1

print(all([0,-1,1]))#元素一假则假
print(any([0,-1,1]))#元素一真则真
结果为:

false
true

a=ascii([1,2,'开外挂'])
print(type(a),[a])
["[1, 2, '\\u5f00\\u5916\\u6302']"]
注意到print会剥离str的引号

>>> bin(1)
'0b1'
>>> bin(255)
'0b11111111'

可以判断真假,元素的有无

>>> bool(-1)
true
>>> bool(0)
false
>>> bool([1,2])
true
>>> bool([])
false

a= bytes('abcde',encoding='utf-8')
print(a.capitalize(),a) #字节也是不可变类型,所以会生成副本
b= bytearray('abcde',encoding='utf-8')
print(b[0])#打印对应元素的ascii码
b[0]=50
print(b[0])#bytearray是可变类型
b'abcde' b'abcde'
97
50
def func():pass
print(callable(func))   #callable()判断是否可以调用,可以加括号的就可以调用
print(callable([]))
true
false

>>> chr(97)将ascii转换为字符
'a'

>>> ord('a')将字符转换为ascii
97

>>> code = 'for i in range(3): print(i)'
>>> compile(code, '','exec')
at 0x000001bd7de31f60, file "", line 1>

>>> c=compile(code,'','exec')
>>> exec(c)
0
1
2

>>> exec(code)
0
1
2

>>> a='1+2*3'
>>> b=compile(a,'','eval')

>>> eval(b)
7
>>> eval(a)
7

code='''
def fib(max): #生成器
    n ,a ,b = 0,0,1 #这是一种tuple赋值方式
    while n<max :="" #print(b)="" yield="" b="" #有点return的味道,="" a="" ,b="b" ,a&#43;b="" #(a,b)="====(b,a+b)" n&#43;="1" return="" '---done---'="" g="fib(6)" while="" true:="" try:="" x="next(g)" print('g:',x)="" except="" stopiteration="" as="" e:="" print('generator="" value:',e.value)="" break="" '''="" py_obj="compile(code,'err.log','exec')" exec(code)="" #或者exec(py_obj)="" 从而实现动态导入。="" 
dir()   # show the names in the module namespace
可以查看类型的方法~.
>>> pmod(5,3)
(1, 2)
>>> pmod(5,2)
(2, 1)
>>> pmod(5,1)
(5, 0)             得到商和余数
>>> x=1
>>> eval('x+1')
2
>>> a='"love"'      去掉一层引号
>>> eval(a)
'love'