python连续打印数字型数组

比如说,我有这样一个数组[1,1,0,1,0,1,1,1,1],我怎样把他打印为110101111,最好是int型

推荐题主两种方法。方法1:

>>> arr = [1,1,0,1,0,1,1,1]
>>> arr_str = map(lambda x:str(x), arr) # 将列表元素由整型变成字符,返回迭代对象
>>> v_str = ''.join(arr_str) # 拼成字符串
>>> v_str
'11010111'
>>> int(v_str, base=2) # 二进制字符串转整型
215

 

方法2:

>>> arr = [1,1,0,1,0,1,1,1]
>>> v, k = 0, len(arr)
>>> for i in range(k):
	v += arr[i] * pow(2, k-i-1)

	
>>> v
215
>>> print(bin(v))
0b11010111
>>> print(bin(v)[2:])
11010111

 

print函数增加end=''参数 for t in list0:print(t,end='')

list1 = [1,1,0,1,0,1,1,1,1]
num = 0
for i in list1[::-1]:
    num = num*10 + i
print(num)

输出:

111101011