请问有人知道,
#当list = 51587的时候转换成2进制数如下,当list= [51587]的时候要如何转换?
list = 51587
temp = bin(list).replace('0b','')
print(temp)
#当list = 51587的时候转换成2进制数如下,当list= [51587]的时候要如何转换?
list = [3,555,3]
l=[]
for i in list:
temp = bin(i).replace('0b','')
l.append(temp)
print(l)
啊这,你把它取出来转成二进制再放进去可以吗?
list[0]= bin(list[0]).replace('0b','')
print(list)
代码及运行结果:
# encoding:gbk
def ten_to_two(num):
binary_list = []
binary = num % 2
divide = num
while True:
binary_list.append(str(binary)) #需要将里面的数字转成字符串,用于join方法解析
divide = int(divide / 2)
binary = divide % 2
if binary == 0 and divide == 0:
break
arr = list(reversed(binary_list)) #使用 list(reversed(array)) 对列表进行反向排序
print(num , '的二进制数为:',''.join(arr))#使用 .join将数组直接转成字符串
oldList=[51587,15,123123,222]
for i in oldList:
ten_to_two(int(i))