萌新第一次接触python 写了一个十进制转二进制
列表和循环都刚学,还不熟练 想请问一下哪里写错了
X =int(input('Input number'))
listc=[]
while X==1:
A = X//2
B = X%2
print(B)
listc.append[B]
X=A
pass
listc.append[1]
print(listc[::-1])
萌新第一次接触python 写了一个十进制转二进制
列表和循环都刚学,还不熟练 想请问一下哪里写错了
X =int(input('Input number'))
listc=[]
while X==1:
A = X//2
B = X%2
print(B)
listc.append[B]
X=A
pass
listc.append[1]
print(listc[::-1])
输入X!=1时进入循环,而不是等于1时进入循环,
list的append函数用的是小括号()而不是中括号[]
以及,最后输出如果用print(listc[::-1])只是逆序输出列表,并没有直接输出一个二进制数,可以通过循环的方式输出:
修改如下:
X =int(input('Input number:'))
listc=[]
while X!=1:
A = X//2
B = X%2
print(B)
listc.append(B)
X=A
pass
listc.append(1)
print('result:')
for item in listc[::-1]:
print(item,end='')