内建函数Python(H)

2023-05-22


  • hasattr(object,name)

说明:判断对象object是否包含名为name的特征(hasattr是通过调用getattr来判断的(ojbect,name)是否抛出异常来完成)。


参数object:目标。


参数name:特点名字。


示例:




>>> hasattr(list, 'append')
True
>>> hasattr(list, 'add')
False




  • hash(object)

说明:如果目标object是哈希表的类型,回到目标object的哈希值。哈希值是整数。在字典搜索中,哈希值用于快速比较字典的关键。如果两个值相同,哈希值也相同。


参数object:目标。


示例:








>>> hash(list)
-2115899692
>>> hash(tuple)
-2115901047
>>> hash(int)
-2115899555
>>> hash(1)
1
>>> hash(1.0)
1







  • help([object])

说明:调用内部帮助系统。如果不包括参数,互动帮助系统将在控制台上启动。如果参数是字符串,可以是模块、函数、类、方法等名称,帮助页面会在控制台上打印。参数也可以是任意目标。


  • hex(x)

说明:将整数x转换成16进制字符串。如果你想得到16进制字符串的浮点,你可以使用float.hex(x)。


参数x:整数。


示例:









>>> hex(3)
'0x3'
>>> hex(13)
'0xd'
>>> hex(18)
'0x12'
>>> float.hex(3.5)
'0x1.c000000000000p 1'
>>> float.hex(3.0)
'0x1.8000000000000p 1'


















































  • getattr(object,name[,defalut])

说明:获得目标object名称name的特性。若object不包含名称name的特性,则抛出AttributeError异常;如果不包含名称name的特性,并且提供default参数,则返回default。


参数object:目标。


参数name:目标特征名称。


参数default:缺少省份的返回值。


示例:










>>> append = getattr(list, 'append')
>>> append 

>>> mylist = [3, 4, 5]
>>> mylist
[3, 4, 5]
>>> append(mylist, 6)
>>> mylist
[3, 4, 5, 6]

>>> method = getattr(list, 'add')
Traceback (most recent call last):
  File "", line 1, in 
AttributeError: type object 'list' has no attribute 'add'
>>> method = getattr(list, 'add', 'NoMethod')
>>> method
'NoMethod'










  • globals()

说明:回到一本关于当前全局符号表的词典。


示例:







>>> globals()
{'__builtins__': , '__name__': '__main__', '__d
oc__': None, '__package__': None}




















  • dir([object])

说明:当没有参数时,返回当前范围内的变量、方法和定义类型目录;带参数时,返回参数的属性和方法目录。如果参数包括方法__dir__(),这种方法将被调用。如参数不包括__dir__(),这种方法将最大限度地收集参数信息。


参数object:目标,变量,类型。


示例:










>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']
>>> import struct
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'struct']
>>> dir(struct)
['Struct', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_clearcache', 'calcsize', 'error', 'pack', 'pack_into', 'unpack', 'unpack_from']
>>> class Person(object):
...     def __dir__(self):
...             return ["name", "age", "country"]
...
>>> dir(Person)
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce___'____reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
>>> tom = Person()
>>> dir(tom)
['age', 'country', 'name']










  • delattr(object,name)

说明:删除object目标名称为name的属性。


参数object:目标。


参数name:特殊名字字符串。


示例:










>>> class Person:
...     def __init__(self, name, age):
...             self.name = name
...             self.age = age
...
>>> tom = Person("Tom", 35)
>>> dir(tom)
['__doc__', '__init__', '__module__', 'age', 'name']
>>> delattr(tom, "age")
>>> dir(tom)
['__doc__', '__init__', '__module__', 'name']










  • dict([arg])

说明:建立数据字典。


示例:










>>> a = dict() #空字典
>>> a
{}
>>> b = dict(one = 1, two = 2)
>>> b
{'two': 2, 'one': 1}
>>> c = dict({'one':1, 'two':2})
>>> c
{'two': 2, 'one': 1}
>>> d= dict([['two', 2], ['one', 1]])
>>> d
{'two': 2, 'one': 1}
>>> e ={'two': 2, 'one': 1}
>>> e
{'two': 2, 'one': 1}










  • divmod(a,b)

说明:回到数据对,等价于等价。(a//b,a%b)。


参数a,b:int、long、float。


示例:










>>> divmod(5,3)
(1, 2)
>>> divmod(5.5, 2.2)
(2.0, 1.0999999999999996)
>>> divmod(5.5, 2)
(2.0, 1.5)











本文仅代表作者观点,版权归原创者所有,如需转载请在文中注明来源及作者名字。

免责声明:本文系转载编辑文章,仅作分享之用。如分享内容、图片侵犯到您的版权或非授权发布,请及时与我们联系进行审核处理或删除,您可以发送材料至邮箱:service@tojoy.com