023讲课后作业漏洞
0. 使用递归编写一个十进制转换为二进制的函数(要求采用“取2取余”的方式,结果与调用bin()一样返回字符串形式)。def Dec2Bin(dec):
result = ''
if dec:
result = Dec2Bin(dec//2)
return result + str(dec%2)
else:
return result
print(Dec2Bin(62))
上面是小甲鱼给的代码,实测print(Dec2Bin(0))无返回值,大佬们可否改进一下,顺带使其如同bin()一样,前缀带有0b? def Dec2Bin(dec):
result = ''
if dec:
result = Dec2Bin(dec//2)
return result + str(dec%2)
else:
return result
def Bin(dec):
if dec == 0:
return '0b0'
else:
return '0b'+Dec2Bin(dec)
print(Bin(62)) jinlovelive 发表于 2019-9-7 23:40
这也是一种想法,不过我更想的是把它集结到一个函数中去,而不是分拆成两个函数 leafu 发表于 2019-9-8 10:46
这也是一种想法,不过我更想的是把它集结到一个函数中去,而不是分拆成两个函数
建个内部函数呗,一样的 在 感谢楼主分享 求人不如求己 碰运气 再来一次 {:5_95:}
页:
[1]