网上大多是直接用函数转化二进制的,下面的写法是自己的数学算法
# binary意为二进制
binary = input("请输入您的二进制组\n")
binary_ = list(binary)
bin_ = len(binary_)
power_ = 0
for i in range(bin_): # 计算第一个二进制
if binary_[i] == '1':
length = bin_ - 1 - i # 算背后还有几位
power = 1
while length > 0:
length -= 1
power = power * 2
power_ = power + power_
print(power_)
数学能力对于编程来说也是至关重要的,希望大家可以在闲暇之余多做一些算法题,锻炼自己!
同时在这里也给大家分享一个好用的内置函数map( )
在Python的手册中是这样介绍的:
map( function , iterable , / , *iterables )
Return an iterator that applies function to every item of iterable, yielding the results.
返回一个迭代器,该迭代器将函数应用于可迭代的每个项
*迭代器:迭代器的作用是用来访问容器(用来保存元素的数据结构)中的元素,所以使用迭代器,我们就可以访问容器中里面的元素。没错!这和访问数组这个序列的指针一样,因为数组范围内的指针就是迭代器的一种
例:map( int , string[ i ])
将string的元素一个个转化为int类型