Абсолютный новичок в Python

Дан файл .txt, содержащий следующие данные для 1000 строк

11010101    10101010 
10101010    10101010
10101000    10101010

Где пространство разделено вкладкой. Мне нужно умножить два двоичных числа вместе, а затем отформатировать данные в матрицу 1000x16, например:

[[1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0],
[1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0]].

Мой код (пока):

with open(‘file.txt’, ‘r’) in f:  
    dataset= f.read()
    dataset= f.split(’/t’)

После этого я просто не знаю, как это сделать.

Любая помощь была бы признательна.

-4
willpower 29 Окт 2019 в 16:18

1 ответ

Вы можете попробовать этот код:

result=[]
with open("file.txt", "r") as f:  
    dataset= f.readline()
    while dataset:
        t=dataset.split("\t")
        x=bin(int(t[0],2)*int(t[1],2))
        x=x[2:]
        #if length of result is less than 16 
        if(len(x)<16):
            req=16-len(x)
            y=""
            for i in range(0,req,1):
                y=y+'0'
            y=y+x
            x=y
        result.append(list(x))    
        dataset=f.readline()

print(result)       

(для Python 3.7.4)

0
Divyansh 2 Ноя 2019 в 15:56