Общие вопросы
Подписаться на эту рубрику по RSS
На самом деле, если вы хотите, чтобы на ваш сайт приходила целевая аудитория, вам стоит позаботиться об этом уже на этапе его проектирования. Итак, несколько дизайнерских решений, которые ассоциируются с современными оформительскими тенденциями, но не способствуют продвижению сайта.
Модуль sqlite3, входит в состав стандартной библиотеки Python, начиная с версии 2.5, и в дополнительной установке не нуждается. Если необходимо получить доступ к SQLite в предыдущих версиях Python, то следует воспользоваться модулем pysqlite. Этот модуль не входит в состав стандартной библиотеки, поэтому его придется устанавливать отдельно.
Для работы с базами данных в языке Python существует единый интерфейс доступа. Все разработчики модулей, осуществляющих связь базы данных с Python, должны придерживаться спецификации DB-API (DataBase Application Program Interface). Это спецификация более интересна для разработчиков модулей, чем для прикладных программистов, поэтому мы не будем ее подробно рассматривать.
Модуль sqlite3 поддерживает спецификацию DB-API 2.0, а так же предоставляет некоторые нестандартные возможности. Поэтому, изучив методы и атрибуты этого модуля, вы получите достаточно подробное представление о спецификации DB API 2.0 и сможете в дальнейшем работать с другой базой данных. Получить номер спецификации, поддерживаемой модулем, можно с помощью атрибута apilevel:
Попробуем создать новую базу данных в SQLite. Запускаем командную строку. Для этого в меню Пуск выбираем пункт Выполнить. В открывшемся окне набираем команду cmd и нажимаем кнопку ОК. Откроется черное окно, в котором будет приглашение для ввода команд. Переходим в папку C:\book, выполнив команду:
cd C:\book
В командной строке должно быть приглашение:
C:\book
По умолчанию в консоли используется кодировка cp866. Чтобы сменить кодировку на cp1251, в командной строке вводим команду:
chcp 1251
Модуль shelve Python позволяет сохранять объекты под определенный ключом (задается в виде строки) и определяется интерфейс доступа, сходный со словарями. Для сериализации объекта используется возможности модуля pickle, а чтобы записать получившуюся строку по ключу в файл , применяется модуль anydbm. Все эти действия модуль shelve производит незаметно для нас. Чтобы открыть файл с базой объектов, используется функция open(). Функция имеет следующий формат:
open(<Путь к файлу>[, flag="c"[, protocol=None[, writeback=False]]])
В необязательном параметре flag можно указать один из режимов открытия файла:
- r - Только для чтения
- w - чтение и запись
- c - чтение и запись (значение по умолчанию). Если файл не существует, он будет создан.
- n - чтение и запись. Если файл не существует, он будет создан. Если файл существует, он будет перезаписан.
Функция open() возвращает объект, с помощью которого производится дальнейшая работа с базой данных. Этот объект имеет следующие методы:
close() - закрывает файл с базой данных. В качестве примера создадим файл и сохран6им в нем список кортежа.
>>> import shelve
>>> db = shelve.open("file2.txt")
>>> db['language'] = ['ru', 'rn', 'ua']
>>> db['colors'] = ['red', 'blue', 'green']
>>> db['language'], db['colors']
(['ru', 'rn', 'ua'], ['red', 'blue', 'green'])
>>> db.close()
Далее...
Пока еще аренда квартир остается дешевле покупки в ипотеку, если учесть размер первоначального ежемесячного взноса. Но надо учитывать и такой факт, что в связи с ростом цен на недвижимость арендная плата будет только увеличиваться, а вот выплаты по кредиту останутся неизменными или уменьшаться, в зависимости от способа погашения кредита.
Для продвижения своего сайта, можно использовать подобные закладки как и для русскоязычных сайтов, так и для англоязычных, что тоже представляет собой интересную возможность получить трафик с зарубежных сайтов. Социальные закладки будет очень полезным инструментом для сео-оптимизации.
Вы запечатлели какой-нибудь потрясающий скриншот и собираетесь его отправить своему другу через всемирную паутину? Ну что же, тогда представляем вашему вниманию такую полезную штуку, как Joxi. Основная его польза заключается в том, что с ним может вполне справиться даже ребенок. Joxi также выделяется своим стильным и современным дизайном, что неоднократно будет радовать ваш взор.
Для того, чтобы ускорить передачу ваших скриншотов или других важных файлов, возможен вход в популярные социальные сети, среди которых ВКонтакте и Facebook. На форумах и других сайтах эти фотографии также могут появиться посредствам удобной вставки специального кода. Словом, сервис Joxi предоставит вам максимум возможностей, которыми можно будет управлять при помощи минимальных усилий.
Многие задаются вопросом - как скрыть исходный код написанных на питоне скриптов, чтобы затем можно было например продавать эти скрипты. В своё время и мы задались этим вопросом, в следствии чего со временем нашли его решение.
Можно было бы просто отдавать клиентам байт-код, который создает python при первом запуске скрипта. Например, запустили test.py, рядом появился test.pyc, его и продаем. Однако в сети есть скрипты, которые восстанавливают из него исходный код с точностью до байта.
Поэтому, чтобы закрыть сорцы скрипта - его надо скомпилировать. Для этого, с помощью расширения cython его можно перевести в Си код, который и скомпилировать обычными инструментами, вроде make.
Рассмотрим решение пошагово:
- Конвертируем python-скрипт в Си:cython -3 СКРИПТ.py
Получаем СКРИПТ.c - это исходный код python-модуля, который выполняет то же самое что и питон-скрипт.
В операционной системе Unix для каждого объекта (файла или каталога) назначаются права доступа для каждой разновидности пользователей - владельца, группы и прочих. Могут быть назначены следующие права доступа: чтение, запись, выполнение.
Права доступа обозначаются буквами:
r - файл можно читать, а содержимое каталога можно просматривать.w - файл можно модифицировать, удалить и переименовать, а в каталоге можно создать или удалить файлы. Каталог можно переименовать или удалить.
x - файл можно выполнить, а в каталоге можно выполнить операции над файлами, в том числе производить поиск файлов в нем.