15、 delattr(object, name):删除对象指定的属性
实参是一个对象和一个字符串。该字符串必须是对象的某个属性。
例如:delattr(x, ‘foobar’) 等价于 del x.foobar 。
16、 class dict(**kwarg)
class dict(mapping, **kwarg)
class dict(iterable, **kwarg)
创建一个新的字典。dict 对象是一个字典类。参见 dict 和 映射类型 — dict 了解这个类。
17、 dir([object]):如果没有实参,则返回当前本地作用域中的名称列表。如果有实参,它会尝试返回该对象的有效属性列表。
默认的 dir() 机制对不同类型的对象行为不同,它会试图返回最相关而不是最全的信息:
1>如果对象是模块对象,则列表包含模块的属性名称。
2>如果对象是类型或类对象,则列表包含它们的属性名称,并且递归查找所有基类的属性。
3>否则,列表包含对象的属性名称,它的类属性名称,并且递归查找它的类的所有基类的属性。
返回的列表按字母表排序。例如:
>>> import struct
>>> dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'a', 'c', 'o', 'struct']
>>> dir(struct)
['Struct', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '_clearcache', 'calcsize', 'error', 'iter_unpack', 'pack', 'pack_into', 'unpack', 'unpack_from']
>>> class shape:
def __dir__(self):
return ['area','perimeter','location']
>>> s=shape()
>>> dir(s)
['area', 'location', 'perimeter']
18、 divmod(a, b):它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数。对于混合操作数类型,适用双目算术运算符的规则。对于整数,结果和 (a // b, a % b) 一致。对于浮点数,结果是 (q, a % b) ,q 通常是 math.floor(a / b) 但可能会比 1 小。在任何情况下, q * b + a % b 和 a 基本相等;如果 a % b 非零,它的符号和 b 一样,并且 0 <= abs(a % b) < abs(b) 。
>>> divmod(10,4)
(2, 2)
>>> divmod(8.3,1.5)
(5.0, 0.8000000000000007)
>>> divmod(0.8,1.5)
(0.0, 0.8)
>>> divmod(7.3,5)
(1.0, 2.3)
19、