def abs(*args, **kwargs)
返回参数的绝对值。
a = -5
print(abs(a)) #打印结果:5
all(*args, **kwargs)
all() 函数用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。
元素除了是 0、空、FALSE 外都算 TRUE。
PS:注意:空元组、空列表返回值为True,这里要特别注意。
all(['a', 'b', 'c', 'd']) # 列表list,元素都不为空或0
True
all(['a', 'b', '', 'd']) # 列表list,存在一个为空的元素
False
all([0, 1,2, 3]) # 列表list,存在一个为0的元素
False
all(('a', 'b', 'c', 'd')) # 元组tuple,元素都不为空或0
True
all(('a', 'b', '', 'd')) # 元组tuple,存在一个为空的元素
False
all((0, 1, 2, 3)) # 元组tuple,存在一个为0的元素
False
all([]) # 空列表
True
all(()) # 空元组
True
any(*args, **kwargs)
any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。
元素除了是 0、空、FALSE 外都算 TRUE。
如果都为空、0、false,则返回false,如果不都为空、0、false,则返回true。
any(['a', 'b', 'c', 'd']) # 列表list,元素都不为空或0
True
any(['a', 'b', '', 'd']) # 列表list,存在一个为空的元素
True
any([0, '', False]) # 列表list,元素全为0,'',false
False
any(('a', 'b', 'c', 'd')) # 元组tuple,元素都不为空或0
True
any(('a', 'b', '', 'd')) # 元组tuple,存在一个为空的元素
True
any((0, '', False)) # 元组tuple,元素全为0,'',false
False
any([]) # 空列表
False
any(()) # 空元组
False
python中any()和all()如何使用
本质上讲,any()实现了或(OR)运算,而all()实现了与(AND)运算。
更多:https://blog.csdn.net/cython22/article/details/78829288
ascii(*args, **kwargs)
ascii() 函数类似 repr() 函数, 返回一个表示对象的字符串, 但是对于字符串中的非 ASCII 字符则返回通过 repr() 函数使用 \x, \u 或 \U 编码的字符。 生成字符串类似 Python2 版本中 repr() 函数的返回值。
ascii('runoob')
"'runoob'" #打印结果
bin(*args, **kwargs)
返回一个整数 int 或者长整数 long int 的二进制表示。
print(bin(13)) #打印结果:0b1101
bool(int)
Python 中布尔值使用常量 True 和 False 来表示。
1、在数值上下文环境中,True 被当作 1,False 被当作 0,例如:
print(True+3) #输出结果:4
print(False+2) #输出结果:2
2、其他类型值转换 bool 值时除了 ''、""、''''''、""""""、0、()、[]、{}、None、0.0、0L、0.0+0.0j、False 为 False 外,其他都为 True 例如:
print(bool(-2)) #输出结果:True
print(bool('')) ##输出结果:False
bytearray(object)
返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256。
a = [1,2,3]
print(bytearray(a)) #输出结果:bytearray(b'\x01\x02\x03')
bytes(object)
返回一个新的 bytes 对象,该对象是一个 0 <= x < 256 区间内的整数不可变序列。它是 bytearray 的不可变版本。
a = [1,2,3]
print(bytes(a)) #输出结果:b'\x01\x02\x03'
callable(i_e_, some_kind_of_function)
用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功。
对于函数, 方法, lambda 函式, 类, 以及实现了 __call__ 方法的类实例, 它都返回 True。
callable(0)
False
callable("runoob")
False
def add(a, b):
...
return a + b
callable(add) # 函数返回 True
True
class A: # 类
...
def method(self):
...
return 0
callable(A) # 类返回 True
True
a = A()
callable(a) # 没有实现 __call__, 返回 False
False
class B:
...
def __call__(self):
...
return 0
callable(B)
True
b = B()
callable(b) # 实现 __call__, 返回 True
True
chr(*args, **kwargs)
用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。
可以是10进制也可以是16进制的形式的数字。
返回值是当前整数对应的ascii字符。
print(chr(0x61)) #输出结果:a
print(chr(49)) #输出结果:1
classmethod(object)
修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。
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(*args, **kwargs)
将一个字符串编译为字节代码。
str = "3 * 4 + 5"
a = compile(str,'','eval')
print(eval(a)) #输出结果:17
complex(object)
用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。。
complex(1, 2)
(1 + 2j)
complex(1) # 数字
(1 + 0j)
complex("1") # 当做字符串处理
(1 + 0j)
# 注意:这个地方在"+"号两边不能有空格,也就是不能写成"1 + 2j",应该是"1+2j",否则会报错
complex("1+2j")
(1 + 2j)
delattr(x, y)
用于删除属性。
delattr(x, 'foobar') 相等于 del x.foobar。
class Coordinate:
x = 10
y = -5
z = 0
point1 = Coordinate()
print('x = ', point1.x)
print('y = ', point1.y)
print('z = ', point1.z)
delattr(Coordinate, 'z')
print('--删除 z 属性后--')
print('x = ', point1.x)
print('y = ', point1.y)
# 触发错误
print('z = ', point1.z)
输出结果:
('x = ', 10)
('y = ', -5)
('z = ', 0)
--删除 z 属性后--
('x = ', 10)
('y = ', -5)
Traceback (most recent call last):
File "test.py", line 22, in <module>
print('z = ',point1.z)
AttributeError: Coordinate instance has no attribute 'z'