источник: http://www.bioinformatics.org/bradstuff/bp/tut/Tutorial006.html

Дескрипторы довольно часто упоминаются в этой документации и также довольно запутанны (по крайней мере, для меня!). По сути, вы можете думать об дескрипторе как о «обертке» текстовой информации.

Дескрипторы обеспечивают (по крайней мере) два преимущества по сравнению с простой текстовой информацией:

  1. Они обеспечивают стандартный способ работы с информацией, хранящейся различными способами. Текстовая информация может быть в файле, или в строке, хранящейся в памяти, или на каком-то удаленном веб-сайте, но дескриптор обеспечивает общий способ работы с информацией во всех этих форматах.
  2. Они позволяют читать текстовую информацию постепенно, а не всю сразу. Это действительно важно, когда вы имеете дело с огромными текстовыми файлами, которые заняли бы всю вашу память, если бы вам пришлось загружать их все.

Дескрипторы могут иметь дело с текстовой информацией, которая считывается (т. е. считывается из файла) или записывается (т. е. записывается в файл). В случае дескриптора «чтения» обычно используются функции read(), которая считывает всю текстовую информацию из дескриптора, и readline(), которая считывает информацию по одной строке за раз. Для дескрипторов ``записи'' регулярно используется функция write().

Чаще всего дескрипторы используются для чтения информации из файла, что делается с помощью встроенной функции Python open:

>>> handle = open("m_cold.fasta", "r")
>>> handle.readline()
">gi|8332116|gb|BE037100.1|BE037100 MP14H09 MP Mesembryanthemum crystallinum cDNA 5' similar to cold acclimation protein, mRNA sequence\n"