2024-04-24 03:03:39 发布
网友
# Write a function that does a decimal to hexadecimal conversion. # Hint: Make use of "%x" for hexadecimal format. def dec2hex(num): return "%x" % num
我的答案返回22而不是0x22。为什么?在
如果需要前缀,则使用了错误的方法;所提供的格式仅将整数直接转换为十六进制,而不使用任何前缀或填充。在
可以使用^{} function返回前缀为0x且没有填充的十六进制表示:
0x
>>> hex(34) '0x22'
或者您可以使用^{} function和#x格式:
#x
#表示需要前缀。您也可以要求它提供0填充,但您需要指定一个字段宽度,该宽度包含前缀:
#
>>> format(34, '#06x') '0x0022'
这里,06将字段填充为6个字符,包括前缀的2个字符。在
06
如果您唯一的选择是使用^{} string formatting operation,您仍然可以使用相同的技巧
>>> '%#x' % 34 '0x22'
填充仍然可用,但有相同的宽度警告:
>>> '%#06x' % 34 '0x0022'
如果需要前缀,则使用了错误的方法;所提供的格式仅将整数直接转换为十六进制,而不使用任何前缀或填充。在
可以使用^{} function 返回前缀为
0x
且没有填充的十六进制表示:或者您可以使用^{} function 和
^{pr2}$#x
格式:#
表示需要前缀。您也可以要求它提供0填充,但您需要指定一个字段宽度,该宽度包含前缀:这里,
06
将字段填充为6个字符,包括前缀的2个字符。在如果您唯一的选择是使用^{} string formatting operation ,您仍然可以使用相同的技巧
填充仍然可用,但有相同的宽度警告:
相关问题 更多 >
编程相关推荐