Користувальницькькі налаштування

Налаштування сайту


python

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Наступна ревізія
Попередня ревізія
Остання ревізія Both sides next revision
python [2014/04/02 01:13]
wombat створено
python [2015/01/13 18:14]
wombat [Ссылки] Матеріали українською
Рядок 1: Рядок 1:
 +===== Приёмы =====
  
 +
 +==== Чтение из архивов ====
 +
 +Для экономии места большие текстовые файлы с данными можно упаковывать в архив, а затем из программы на Питоне считывать нужные файлы прямо из архива. Например,​ если имеется папка ''​data_files'',​ в которой файлы ''​data1.txt'',​ ''​data2.csv'',​ ''​data3.dat'',​ ... то её можно запаковать в ZIP-архив
 +
 +  zip data_files.zip data_files
 +
 +после чего открывать файлы данных следующим образом((https://​docs.python.org/​2/​library/​zipfile.html#​zipfile.ZipFile.open)):​
 +
 +<code python>
 +data_zipfile = zipfile.ZipFile('​data_files.zip','​r'​)
 +data_file = data_zipfile.open('​data_files/​data1.txt'​)
 +</​code>​
 +
 +Узнать,​ какие файлы содержатся в ZIP-архиве можно так:
 +
 +<code python>
 +data_zipfile.namelist()
 +</​code>​
 +
 +Далее можно производить считывание,​ как из обычного файла методами ''​read()'',​ ''​readline()''​ или ''​readlines()''​.
 +
 +Аналогично можно создать ''​tar.gz''​ или ''​tar.bz2''​ архивы((https://​docs.python.org/​2/​library/​tarfile.html#​tarfile.TarFile.extractfile)):​
 +
 +  tar -cvzf data_files.tar.gz data_files
 +
 +или
 +
 +  tar -cvjf data_files.tar.bz2 data_files
 +
 +и обращаться к файлам в них так:
 +
 +<code python>
 +data_tar = tarfile.open("​data_files.tar.gz"​)
 +data_file = data_tar.extractfile(data_files/​data2.csv)
 +</​code>​
 +
 +или
 +
 +<code python>
 +data_tar = tarfile.open("​data_files.tar.bz2"​)
 +data_file = data_tar.extractfile(data_files/​data3.dat)
 +</​code>​
 +
 +Следует обратить внимание,​ что при обращении к файлу внутри архива нужно указывать полный путь к файлу внутри архива,​ ведь в архиве могут храниться каталоги с файлами или вложенными каталогами,​ и файл может располагаться в каком-либо из них.
 +
 +Чтобы узнать,​ какие файлы находятся внутри TAR-архива,​ служит функция:​
 +
 +<code python>
 +data_tar.getnames()
 +</​code>​
 +
 +
 +====== Литература ======
 +
 +[[http://​uk.wikibooks.org/​wiki/​Пориньте_у_Python_3 | Пориньте у Python 3]] - перевод известной книги "Dive into Python 3".
 +
 +
 +====== Ссылки ======
 +
 +[[https://​wiki.python.org/​moin/​UkranianLanguage | Матеріали українською]]
 +
 +https://​docs.python.org/​3/​library/​string.html#​formatspec
 +
 +http://​wombat.org.ua/​AByteOfPython/​
 +
 +[[http://​www.pythontutor.com/​ | Визуализация выполнения программы]]
 +
 +[[http://​www.pyzo.org/​python_vs_matlab.html | Python vs. Matlab]]
python.txt · В останнє змінено: 2015/01/13 18:16 by wombat