Вопрос

У меня есть этот текст:

2,3,5,1,13,7,17,11,89,1,233,29,61,47,1597,19,37,41,421,199,28657,23,3001,521,53,281,514229,31,557 , 2207,19801,3571,141961,107,73,9349,135721,2161,2789,211,433494437,43,109441,139,2971215073,1103,97,101,6376021,90481,953,5779,661,14503,797 , 59,353,2521,4513,3010349,35239681,1087,14736206161,9901,269,67,137,71,6673,103681,9375829,54018521,230686501,29134601,988681,79,157,1601,2269,370248451,994719485309 : , 347,29717,709,159512939815855788121,

Это числа, сгенерированные моей программой-генератором, теперь у проблемы есть ограничение на исходный код, поэтому я не могу использовать приведенные выше тексты в своем решении , поэтому я хочу сжать это и поместить в структура данных в Python, чтобы я мог распечатать их, индексируя, например:

родовое слово

и F[0] дали бы 2 F[5], дали бы 7 вот так ... Пожалуйста, предложите мне подходящую технику сжатия.

PS: Я новичок в Python, поэтому, пожалуйста, объясните свой метод.

Это было полезно?

Решение

Конечно, вы можете это сделать:

родовое слово

Обратите внимание, что это всего на 139 символов короче. Но это работает:

родовое слово

Если у вас действительно так мало кода, может быть, вы должны вычислить эти данные или что-то в этом роде?Что это такое?

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

zlib выполнит свою работу, если вам действительно нужно сжатие.Если вы не хотите сжатия, боюсь, что мои навыки чтения мыслей идут на убыль.

В Python 2.4–2.7, pypy, jython:

родовое слово
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top