def my_bin(value):
list = []
count = 0
# 先求该数的二进制
while value:
if value % 2 == 1:
list.append('1')
# list.append(1) 这里为什么要 将1写成字符串数据
# 续解:加引号list添加字符串'1',不
#加引号list添加int 1,都可以
count += 1
else:
list.append('0')
value = value >> 1
# # 这里将已经除以2一次的整数用右移一次表示,直到
# value不符合while
# value这个条件时跳出循环
list1=list[::-1]
# return ' '.join(list1) + count 这
#里+count 错误,因为+拼接必须数据类型一致
# return ' '.join(list1) + 'count' #这
#样N写会直接打印出 count
return ' '.join(list1) + str(count)
print(bin(10)) #只是单纯执行这一句
if __name__ == "__main__":
print(my_bin(14))
print(my_bin(24))
print(my_bin(34))
05-03 三天不解代码之一 终于搞定了
最新推荐文章于 2020-07-16 11:30:16 发布