Чтение csv-файла с шестнадцатеричной кодировкой

#python #csv

#python #csv

Вопрос:

Я пытаюсь прочитать файл csv, который, по-видимому, имеет шестнадцатеричную кодировку. Проблема в том, что я не получаю числа, которые я должен после чтения файла, вместо этого я получаю что-то странное вроде этого:

 PK!�S��N[Content_Types].xml �(����N�0E�H�C�-�ݲ@5���(`�Ib�/y���=��@�j7�b��s=3��6�k����ؘX��J��b������S�x�����f�����V�K)<  uV"�4>Z��7�"�z)[��у��K�R�z
  

вместо обычного числа.
Вот мой код:

 import csv
import binascii
import codecs

matrix = []
path = r'G:maria dataPythontest.csv'
with open(path, errors="ignore") as f:
    reader = csv.reader(f)
    print(type(reader))
    j = 0
    reader = csv.reader(x.replace('', '') for x in f)
    for row in reader :
        matrix.append(row)
print(matrix[10][0])
  

Комментарии:

1. вы уверены, что это не архивированный файл?

2. Вы пробовали open(..., encoding="utf-8")

Ответ №1:

При просмотре ZIP-файла в текстовом редакторе первые два байта файла обычно имеют значение «PK». Попробуйте разархивировать его:

 import zipfile
with zipfile.ZipFile(path_to_zip_file, 'r') as zip_ref:
    zip_ref.extractall(directory_to_extract_to)