2015-11-19 41 views
2

假設我有二進制文件的列表如下:什麼是對Python中的二進制文件列表執行按位操作的優雅方式?

b = [0b10,0b110,0b101] 

我想執行按位,只有所有列表B中的二進制文件。有沒有更好的方法來做到這一點,而不是順序添加兩個二進制文件?

+0

是您的*字符串*,或*整數*的名單? Python中沒有內置的二進制類型。 – jonrsharpe

+0

@jonrsharpe但你可以用二進制說明符初始化整數。 OP已經顯示了一個完全合法的初始值。 – tdelaney

+0

你可以用'&',即'0b10&0b110 == 2'和'bin(2)=='0b10''執行按位AND。 –

回答

3

您可以使用operator標準模塊

import operator 
result = reduce(operator.and_, b) 
+0

酷!這正是我所希望的。 –

+0

您選擇'iand'而不是'and_'的任何特定原因? – user2357112

+0

@ user2357112:錯誤...正確的是'and_'(即使數字相同) – 6502

相關問題