Как открыть файл в троичном формате в Python?

Я любительский программист на Python. Мне было интересно, есть ли способ открыть файл в троичном режиме? Это действительно поможет узнать в ближайшее время. Что-то вроде этого, но тернарно:

with open("C:/Users/jfamily/Documents/NJ_Science_Fair/binary_open_test.txt", 
"rb") as binaryfile :
data = bytearray(binaryfile.read())
print(data)

Что вообще означает «открыть в троичном»? Компьютеры не работают троично. Каково содержимое файла и как он представляет троичные данные?

Aran-Fey 26.10.2018 01:18

Я знаю, что вы можете открывать данные файла в двоичном формате в python, но я хочу знать, можете ли вы это сделать, кроме открытия данных в троичном, а не двоичном формате.

Noah Juarez 26.10.2018 01:28

зачем тебе троичная?

E.Coms 26.10.2018 02:18

Двоичный режим просто означает, что данные, возвращаемые из вызовов чтения, являются байтами, которые представляют собой последовательности 8-битных значений, в отличие от текстовых символов в строке, которая может состоять из одного или нескольких байтов каждый (в Python 3). Так что "троичный" режим действительно не имеет смысла ...

martineau 26.10.2018 02:43

Я кодирую и расшифровываю фотографии в ДНК для своего проекта Science Fair. В настоящее время я выполняю декодирование, и мне нужно открыть файл изображения в троичном формате.

Noah Juarez 27.10.2018 18:29
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
5
110
2

Ответы 2

В Python такой возможности нет. Язык поддерживает двоичный формат, потому что это общий формат файла; троичный нет.

Конечно, если ты сочтет это полезным, я предлагаю вам написать собственный тернарный пакет.

Бинарный - это не совсем формат файла. Это больше похоже на полное отсутствие формата файла - компьютер никак не интерпретирует данные.

Aran-Fey 26.10.2018 01:22

Комментарий @ Aran-Fey, здесь, я думаю, лучший ответ на этот вопрос

MyStackRunnethOver 26.10.2018 02:10

Из документов об открытом

https://docs.python.org/3/library/functions.html#open

As mentioned in the Overview, Python distinguishes between binary and text I/O. Files opened in binary mode (including 'b' in the mode argument) return contents as bytes objects without any decoding. In text mode (the default, or when 't' is included in the mode argument), the contents of the file are returned as str, the bytes having been first decoded using a platform-dependent encoding or using the specified encoding if given.

Итак, на самом деле «двоичный» здесь означает байты. Эти байты могут содержать данные в какой-то тернарной кодировке, но вы, вероятно, все равно откроете файл как двоичный и сами расшифруете их в соответствии со своей троичной спецификацией.

Другие вопросы по теме