Python3内置函数(一)
Python3内置函数
- Python3内置函数(一)
- abs()
- all()
- any()
- ascii()
- bin()
- bool()
- bytearray()
- bytes()
- callable()
- chr()
- classmethod 修饰符
- compile()
- complex
daily learn
abs()
返回一个数的绝对值
浮点数
>>> abs(-3.4)
3.4
复数的虚部以j或者J作为后缀 返回模
>>> abs(3+2j)
3.605551275463989
all()
括号里面可以是元组或者列表
如果 iterable 的所有元素均为真值(或可迭代对象为空)则返回 True
简单来说
元素全是 True 才是True,有个 0、空、FALSE就是FALSE
>>> all(['a','b','c'])
True
>>> all(['a','','c']) // 有空返回false
False
>>> all([0,'b','c']) // 有0返回false
False
>>> all([]) // 空列表返回true
True
>>> all(()) // 空元组返回ture
True
any()
括号里面可以是元组或者列表
元素不全是 0、空、FALSE 就是TRUE
相对的 ,元素全是 0、空、FALSE才是FALSE
简单来说
元素有个TRUE就是TURE
// 等于
def any(iterable):
for element in iterable:
if element:
return True
return False
>>> any(['a','b','c'])
True
>>> any(['a','','c'])
True
>>> any([0,'',False])
False
>>> any([])
False
>>> any(())
False
ascii()
将所有非 ascii 字符替换为转义字符
返回一个对象可打印的字符串
括号里可以是 字典 列表 字符串 元组等
>>> ascii('大丈夫')
"'\\u5927\\u4e08\\u592b'"
bin()
返回一个整数 int 或者长整数 long int 的二进制表示
>>> bin(10)
'0b1010'
bool()
给定参数转换为布尔类型,如果没有参数,返回 False
>>> bool(0)
False
>>> bool(1)
True
bytearray()
bytearray 类是一个可变序列,包含范围为 0 <= x < 256 的整数
//方法
class bytearray([source[, encoding[, errors]]])
>>> bytearray('qwe','utf-8')
bytearray(b'qwe')
>>> bytearray([1,2])
bytearray(b'\x01\x02')
bytes()
bytes 对象是由单个字节构成的不可变序列
序列中的每个值的大小被限制为 0 <= x < 256
// 方法
class bytes([source[, encoding[, errors]]])
>>> bytes([1,2])
b'\x01\x02'
callable()
检查一个对象是否是可调用的
// 调用方法返回true
>>> def add(a,b):
... return a +b
...
>>> callable(add)
True
>>> callable('a+b')
False
chr()
返回 Unicode 码位为整数(括号内)的字符的字符串格式
实参的合法范围是 0 到 1,114,111
>>> chr(97)
'a'
>>> chr(0x30)
'0'
classmethod 修饰符
classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。
// 声明类方法
class C:
@classmethod
def f(cls, arg1, arg2, ...): ...
// 例子
class A(object):
bar = 1
def func1(self):
print ('foo')
@classmethod
def func2(cls):
print ('func2')
print (cls.bar)
cls().func1() # 调用 foo 方法
A.func2() # 不需要实例化
//
func2
1
foo
compile()
将一个字符串编译为字节代码
// 语法
compile(source, filename, mode[, flags[, dont_inherit]])
source -- 字符串或者AST(Abstract Syntax Trees)对象。。
filename -- 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
mode -- 指定编译代码的种类。可以指定为 exec, eval, single。
flags -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。。
flags和dont_inherit是用来控制编译源码时的标志
str = '3+4'
a = compile(str, '', 'eval')
print(eval(a))
// 结果
7
str = 'print("super")'
a = compile(str, '', 'exec')
exec(a)
//结果
super
complex
返回值为 real + imag*1j 的复数,或将字符串或数字转换为复数
//语法
class complex([real[, imag]])
real -- int, long, float或字符串;
imag -- int, long, float;
>>> complex(1)
(1+0j)
>>> complex('2')
(2+0j)
>>> complex(1,2)
(1+2j)