python内置函数

英文文档:

hex(x)

convert an integer number to a lowercase hexadecimal string prefixed with “0x”, for example

if x is not a python int object, it has to define an __index__() method that returns an integer.

说明:

  1. 函数功能将10进制整数转换成16进制整数。

>>> hex(15)’0xf’>>> hex(16)’0x10′

 2. 如果参数x不是整数,则它必须定义一个返回整数的__index__函数。

# 未定义__index__函数
>>> class student:
def __init__(self,name,age):
self.name = name
self.age = age
>>>
>>> s = student(‘kim’,10)
>>> hex(s)
traceback (most recent call last):
file “”, line 1, in
hex(s)
typeerror: ‘student’ object cannot be interpreted as an integer
# 定义__index__函数,但是返回字符串
>>> class student:
def __init__(self,name,age):
self.name = name
self.age = age
def __index__(self):
return self.name
>>> s = student(‘kim’,10)
>>> hex(s)
traceback (most recent call last):
file “”, line 1, in
hex(s)
typeerror: __index__ returned non-int (type str)
# 定义__index__函数,并返回整数
>>> class student:
def __init__(self,name,age):
self.name = name
self.age = age
def __index__(self):
return self.age
>>> s = student(‘kim’,10)
>>> hex(s)
‘0xa’

Posted in 未分类

发表评论