看代码
使用递归编写一个十进制转换为二进制的函数(要求采用“取2取余”的方式,结果与调用bin()一样返回字符串形式)结果与调用bin()一样返回字符串形式 是什么意思 ,为什么代码最后打印出一个整形?
def Dec2Bin(dec):
result = ''
if dec:
result = Dec2Bin(dec//2)
return result + str(dec%2)
else:
return result
print(Dec2Bin(62)) 如果你type(Dec2Bin(62)),你会发现,返回的数据类型是字符串的 你在IDLE里面试一下就明白了,调用bin()后,会返回一个字符串。
比如你现在在shell里,你调用Bin(10),会返回一个“0b1010”的字符串。
代码最后就是简单的把10进制的62转换成2进制,str成自字符串输出了。 heidern0612 发表于 2018-12-13 08:12
你在IDLE里面试一下就明白了,调用bin()后,会返回一个字符串。
比如你现在在shell里,你调用Bin(10),会 ...
说得我不是很懂 result 怎么 和 str 进行拼接?? 本帖最后由 heidern0612 于 2018-12-14 08:32 编辑
a2421480 发表于 2018-12-13 20:11
result 怎么 和 str 进行拼接??
result结果不是个字符串吗?字符串+字符串 不就是拼接么?
例如"5"+"20",返回的是字符串"520"。
页:
[1]