Python将十进制转换为十六进制

我这里有一个将十进制转换为十六进制的函数,但它以相反的顺序打印。我该如何解决?

def ChangeHex(n):

if (n < 0):

print(0)

elif (n<=1):

print(n)

else:

x =(n%16)

if (x < 10):

print(x),

if (x == 10):

print("A"),

if (x == 11):

print("B"),

if (x == 12):

print("C"),

if (x == 13):

print("D"),

if (x == 14):

print("E"),

if (x == 15):

print ("F"),

ChangeHex( n / 16 )

回答:

如果要自己编写此代码而不是使用内置函数hex(),则可以在打印当前数字之前简单地进行递归调用:

def ChangeHex(n):

if (n < 0):

print(0)

elif (n<=1):

print n,

else:

ChangeHex( n / 16 )

x =(n%16)

if (x < 10):

print(x),

if (x == 10):

print("A"),

if (x == 11):

print("B"),

if (x == 12):

print("C"),

if (x == 13):

print("D"),

if (x == 14):

print("E"),

if (x == 15):

print ("F"),

以上是 Python将十进制转换为十六进制 的全部内容, 来源链接: utcz.com/qa/430011.html

回到顶部