我需要将一些列表中的数字转换成十进制和八进制。该列表起作用,转换也起作用。但我无法让转换工作在列表上。如何将列表中的数字转换为十进制和八进制?
print ("Welcome to Python binary convertor!")
print ("When you wish to stop entering numbers press x")
filename = "binarylist.txt"
numlist = []
num = input("Enter a binary number:")
while num !="x":
numlist.append(num)
num = input("Enter a binary number:")
def menu():
print ("Your options are:")
print (" 1. Convert Binary to Decimal")
print (" 2. Convert Binary to Octal")
print (" ")
return int(input("Choose an option"))
loop = 1
choice = 0
while loop == 1:
choice = menu()
if choice == 1:
result = int(input("Enter a binary number"), 2)
print (result)
elif choice == 2:
result = int(input("Enter a binary number"), 8)
print (result)
else:
print ("Error:Invalid choice ")
loop=0
查看'oct','bin'和'hex'函数,并尝试将它们映射到列表。例如'map(oct(numlist))'。 – HardlyKnowEm 2012-01-30 05:59:33
Aside - 使用布尔值(True/False)表示布尔检查。这不是C,我们尽量避免这样的垃圾!此外,而不是'loop = 0'考虑'while True:... break'结构。 – 2012-01-30 06:00:57