我正在解决this问题。我写了这段代码,但它发出错误“私人测试案例失败”。这是我的代码。请看一下,告诉我出了什么问题。
def dec2hex(num):
a = str(num)
if (a[-1]=='0'):
return "0x0%x"%num
else :
return "0x%x"%num
以下是问题: “编写一个执行十进制到十六进制转换的函数。 提示:使用“%x”表示十六进制格式。“
答案 0 :(得分:2)
确实,您的代码将通过已知的测试用例,它似乎在“私人测试用例”中失败了。值得注意的是,当传递值为20时,您的代码输出0x014
。可能只是希望返回值至少为2个十六进制数字,加上' 0x'。
在这种想法中,不是检查最后给定的数字是否为零,而是检查所得到的十六进制转换的长度。这应该足以让你走上正确的轨道。
我不想发布最终代码(使用这种思维,我能够通过测试),因为这几乎等于作弊。请注意您的代码很好,只是缺乏给定的要求。