Python内建函数(H)

  • 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 
<method 'append' of 'list' objects>
>>> 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 "<stdin>", line 1, in <module>
AttributeError: type object 'list' has no attribute 'add'
>>> method = getattr(list, 'add', 'NoMethod')
>>> method
'NoMethod'
复制代码

 

  •  globals()

说明:返回一个描述当前全局符号表的字典。

示例:

 

>>> globals()
{'__builtins__': <module '__builtin__' (built-in)>, '__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)

参数abintlongfloat

示例:

复制代码
>>> divmod(5,3)
(1, 2)
>>> divmod(5.5, 2.2)
(2.0, 1.0999999999999996)
>>> divmod(5.5, 2)
(2.0, 1.5)
复制代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值