Как мне преобразовать все элементы списка в двоичный файл в python, используя метод bin ()? - PullRequest
0 голосов
/ 22 марта 2019

У меня есть список numbers = ['1', '5', '10', '8'], и я хочу преобразовать каждый элемент этого списка в двоичный файл. Я пробовал этот код, но он не работает

numbers = ['1', '5', '10', '8']
newl=[]
for i in numbers:
    newl.append(bin(i))
print(newl)

Как мне это сделать?

Ответы [ 2 ]

4 голосов
/ 22 марта 2019

Поскольку ваш список содержит строку, вы должны сначала преобразовать их в целые числа:

numbers = ['1', '5', '10', '8']
newl=[]
for i in numbers:
    newl.append(bin(int(i))[2:])
print(newl)  # -> ['1', '101', '1010', '1000']

Или с пониманием списка в одной строке:

print([bin(int(i))[2:] for i in numbers])    # -> ['1', '101', '1010', '1000']
0 голосов
/ 22 марта 2019

для int укажите целое число, а не строку, а префикс bin 0, так что мы можем удалить его с помощью [2:] при необходимости.

>>> list(bin(int(each))[2:] for each in  ['1', '5', '10', '8'])
['1', '101', '1010', '1000']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...