我对python 2.7完全不熟悉。上次我为自己开发了一个小功能,并喜欢知道如何改进我的算法。那里有什么不必要的东西吗? (我不想故意使用构建函数,因为我是初学者。但我知道这些存在。我希望以后能记住这一点。)或者你知道其他方法可以从基础计算2到10?这是我所知道的唯一方式,或者更确切地说,我将如何用笔和纸计算它。
import math
print "Please enter a binary sequence."
prompt = '>> '
x = raw_input(prompt)
n = x[::-1]
i = 0
s = 0
'''bin2dec'''
for i in range(len(n)):
i += 1
if int(str(n)[i-1]) != 0:
s += pow(2, i-1)
else:
s += 0
print s
PS:我目前正在制定反向算法。敬请关注:)
答案 0 :(得分:0)
import math
print "Please enter a binary sequence."
prompt = '>> '
x = raw_input(prompt)
x = list(x[::-1])
result=0
'''bin2dec'''
for i in range(len(x)):
result+=int(x[i])*pow(2,i)
print result
2**i
代替使用数学函数。