Быстрый в изучении - мощный в программировании
Скрипт ИНВЕСТОР на Python

Попробуйте себя в качестве инвестора имея в помощники мощный алгоритм советника на Python...

Все уроки по PyQt5

PyQt5 реализован как комплект Python-модулей. Он включает в себя около 620 классов и 6000 функций и методов...

Скрипт отправки SMS через Python

Была задача отправить SMS-ки большому списку номеров телефона с уточнением цены за всю рассылку "До" ее отправки...

Общие вопросы

Подписаться на эту рубрику по RSS

Разные вопросы и ответы которые волнуют начинающих Python 3 программистов

razbor-url-adresa.jpg

Интернет прочно вошел в нашу жизнь. Очень часто необходимо передать данные на Web-сервер или, наоборот, получить данные. Например, нужно получить котировку валют или прогноз погоды, проверить наличие писем в почтовом ящике. В состав стандартной библиотеке Python входит множество модулей, позволяющий работать практически со всеми протоколами Интернета.

Разбор URL-адреса

С помощью модуля urlparse можно манипулировать URL-адресом. Например, разобрать его на составляющие или получить абсолютный URL-адрес, указав базовый адрес и относительный. URL-адрес состоит из следующих элементов:

<Протокол>://<Домен>:<Порт>/<Путь>;<Параметры>?<Запрос>#<Якорь>
Далее...

Запись данных в файл Python

Как осуществить чтение из файла мы обсудили в прошлой статье. В данной статье мы обсудим способы записи данных в файл. Чтобы не было ошибки из за доступа, убедитесь, что в папке где вы хотите выполнить изменения или сам файл имеют права 777.

Чтобы не соскучится, мы покажем несколько способов внесения данных в файл и наглядно увидим результат. Чтобы открыть файл для записи или же создать его, мы воспользуемся функцией open(filename, mod) и в качестве второго параметрам mod укажем значение w т.е. (write) запись. Если файл с указанным названием filename не существует - он будет создан.

Создаем новый файл в Python

# -*- coding: utf-8 -*-
my_file = open('snake.txt', 'w')
 
# Закрываем файл
my_file.close()

После выполнения данного скрипта, по указанному нами пути будет создан новый файл snake.txt если файл не был создан то нужно проверить права доступа на папку. Стоит учесть, что если файл snake.txt существовал ранее, то после открытия его функцией open() и мод W, тогда содержимое файла удаляется. Если вы хотите добавить что-то в конце, то следует использовать мод 'a+'.

Запись данных в файл Python

Предположим, что мы создали новый файл и хотим в него внести некий текст, для этого воспользуемся методом write().

# -*- coding: utf-8 -*-
my_file = open('snake.txt', 'w')
 
text_for_file = 'Some text here...'
my_file.write(text_for_file)
 
my_file.close()
Далее...

создавать сайты в Python

Python очень легкий язык программирования с низким порогом вхождения. Те программисты которые уже знают любой другой язык программирования будь то PHP, Java или C подобные языки, то понимание языка Python будет намного выше. Ассоциируя уже имеющие знания другого языка программирования с новыми функциями и модулями Python, вы легко смоете понять логику работы Python. В сравнении с PHP, Python не выполняет только одну задачу. Он применяется в разных отраслях, таких как создание программ, приложений в смарфоне, игр и сайтов.

По скорости работы и выполнения тех же задач, Python и PHP работают практически одинаково. Дальнейший выбор на каком языке программирования делать сайты это дело вкуса. В изучении Python есть больше плюсов нежели в программировании на PHP. Согласен, на PHP вы создадите сайт за несколько минут, но в Python вам придется изучить хотя бы основы языка потом уже понять как работают его фреймворки для создания сайтов.

Далее...

Объектно-ориентированное программирование в python

Объектно-ориентированное программирование (ООП) - это способ организации программы позволяющий использовать один и тот же код многократно. В отличие от функции и модулей ООП позволяет не только разделить программу на фрагменты, но и описать предметы реального мира в виде объектов, а также организовать связи между этими объектами.

Основным "кирпичиком" ООП является класс. Классы в Python - это объект, включающий набор переменных и функций для управления этими переменными. Переменные называют атрибутами, а функции - методами. Класс является фабрикой объектов, т.е. позволяет создать неограниченное количество объектов, основанных на этом классе.

Определение класса и создание экземпляра класса в Python

Класс описывается с помощью ключевого слова class по следующей схеме:

class <Название класса>[(<Класс1>[, ..., <КлассN>])]:
    [""" Строка документирования """]
    <Описание атрибута и методов>

Инструкция создает новый объект и присваивает ссылку на него идентификатору, указанному после ключевого слова class. Это означает, что название класса должно полностью соответствовать правилам именований переменных. После названия класса в круглых скобках можно указать один или несколько базовых классов через запятую. Если класс не наследует базовые классы, то круглые скобки можно не указывать. Следует заметить, что все выражения внутри инструкции class выполняются при создании объекта, а не при создании экземпляра класса. В качестве примера создадим класс, внутри которого просто выводится сообщение:

Далее...

Модуль calendar

Модуль calendar позволяет вывести календарь в виде простого текста или в HTML формате. Прежде чем использовать модуль, необходимо подключить его с помощью выражения:

import calendar

Модуль предоставляет следующие классы:

Calendar - базовый класс, который наследует все остальные классы. формат конструктор:

Calendar([<Первый день недели>])

В качестве примера получим двухмерный список всех дней в январе 2013 года, распределение по дням недели:

import calendar
c = calendar.Calendar(0)
print c.monthdayscalendar(2013, 1) # 1 - это январь
Далее...

Оптимизация для поисковых систем

Если Вы собираете создавать новый сайт или же хотите улучшить уже существующий, то первое о чем нужно подумать – это оптимизация сайта для поисковых систем. Эта мера позволит привлечь внимание к Вашему ресурсу именно целевой аудитории, а не случайных посетителей, хотя их число так же увеличится.

Когда работа у улучшению сайта проделана, можно переходить к следующему этапу, повышению ссылочной популярности сайта. По сути все действия данного этапа сводятся к следующему принципу: чем больше ссылок на ваш ресурс, тем больше его удельный вес при индексации поисковыми системами. Чем больше удельный вес, тем выше строчка в сформированном поисковом запросе. Существует много способов повышения удельного веса ссылочной массы, как законные так и незаконные.

Для начала рассмотрим законные. К ним относятся размещение ссылок во всевозможных каталогах, блогах, страницах социальных сетей, тематических сайтах. Можно так же использовать способ «обмена ссылками». Причем обмениваться ссылками можно не только со страницами с таким же товаром, но и с сопутствующими. Не пренебрегайте социальными сетями, сейчас даже простая страница в соцсети может сделать в разы больше, чем проплаченая реклама.

Далее...

Создание сайтов

Многие люди думают как создать сайт, но не знаю с чего начинать. Давайте рассмотрим на этой странице как создать сайт самостоятельно и с чего лучше всего начать.

Прежде всего нужно изучить язык HTML И CSS. Учебники вы можете скачать бесплатно на этом сайте и приступить к изучению. Создание сайтов дело довольно длительное и трудоемкое. Поэтому если вы решили серьезно заняться сайтостроением не спешите и будьте терпеливы.

Следующий шаг это то что вам нужно решить какой будет тематика вашего сайта. Хорошенько подумайте ,о чем будет ваш сайт , что вы умеете хорошо делать, о чем вы сможете рассказать вашим потенциальным посетителям.Не бойтесь что вы не сможете найти тему ,в интернете миллионы пользователей ,так что будьте уверены что ваша тема тоже будет актуальна.Сначала начинайте с простенького пишите о том что знаете. Так же можно зайти на любой сайт и немного подсмотреть.

Облегчите себе работу пользуйтесь HTML редактором.Редактор разбит на две части в одной вы пишете код, а в другой смотрите что из этого получается.В редакторе есть все необходимые функции(редактирование фона,файлов,таблиц итд.) Скачать редактор можно на этом сайте.Так же можно просто брать готовый шаблон и неполнить его.Советую перед использованием редактором изучите язык разметки HTML.

Далее...

Парсер HTML Python

В практике любого программиста наступает задача скопировать некий материал с сайта. Так как страниц достаточно много не стоит терять время на ручное копирование. Ведь, языки программирования нужны для того чтобы избавится от рутинной работы и автоматизировать разные задачи. В Python есть отличная библиотека для работы с HTML. С ней можно парсить не только сайты но и обычные html документы. Хорошим преимуществом данной библиотеки является персональный алгоритм структурирования HTML кода, что позволяет программисту сэкономить время работы.

Но, проблемы в работе с html документами могут все равно появляться. HTML не имеет строгую структуру кода и некоторые верстальщики дают волю фантазии и изобретают свою структуру кода. Могут возникнуть и проблемы с кодировкой, что создаст новые проблемы для структурирования кода и получения данных.

Мы не будем воровать контент с других сайтов чтобы продемонстрировать библиотеку в работе, примеры будем делать на нашем сайте. Администрация pythonworld, поблагодарит нас за это и пойдем дальше.

Установка библиотеки Beautiful Soup (Linux)

$ apt-get install python-bs4
$ apt-get install python-lxml
$ apt-get install python-html5lib

Библиотека Beautiful Soup предназначена для работы с Python 2, но так же умеет работать с кодом Python 3. После установки и python-html5lib, можно будет парсить и современные документы стандарта HTML5.

Далее...

циклы в Python

Для организации циклов наиболее часто используется инструкция for, которая позволяет выполнить обход элементов коллекции. Итерации – одна из самых богатых особенностей языка Python. Однако наиболее часто используемой формой итераций является простой цикл по элементам последовательности, такой как строка, список или кортеж. Пример реализации итераций приводится ниже:

# -*- coding: utf-8 -*-
for n in [1,2,3,4,5,6,7,8,9]:
    print "2 в степени %d = %d" % (n, 2**n)

В данном примере на каждой итерации переменная n будет последовательно получать значения из списка [1,2,3,4,...,9]. Поскольку необходимость организовать цикл по фиксированному диапазону целочисленных значений возникает достаточно часто, для этих целей используется сокращенная форма записи:

for n in range(1, 10):
    print "2 в степени %d = %d" % (n, 2**n)

Функция range(i,j [,stride]) создает объект, представляющий диапазон целых чисел со значениями от i по j-1. Если начальное значение не указано, оно берется равным нулю. В третьем необязательном аргументе stride можно передать шаг изменения значений. Например:

Далее...

Словари в Python

Словарь является ассоциативным массивом или таблицей хешей, содержащий объекты, индексированные ключами. Чтобы создать словарь, последовательность элементов необходима заключить в фигурные скобки ({}), как показано в примере ниже.

Для получения значения словаря, его содержимое вызывается с помощью ключа. Ключ должен быть уникальным по отношению к другим, если ключ в словаре дублируется, то значение ключа будет тот кто ближе к концу словаря.

person = {
    'name': 'Ваня',
    'age': 18,
}
Объекты из словарях, можно изменять по своему желанию следующим образом.

person = {
    'name': 'Ваня',
    'age': 18,
}
person['name'] = 'John'
print person # Вернет: {'age': 18, 'name': 'John'}
Чаще всего в качестве ключей применяются строки, тем не менее, для этих целей допускается использовать большинство других объектов языка Python, включая числа и кортежи. Определенные объекты, включая списки и словари, не могут использоваться в качестве ключей, потому что их содержимое может изменяться.

Далее...