Сообщество - Программирование на python
Программирование на python
46 постов 2 560 подписчиков
76

[Django] Уроки на примере реального web проекта

[Django] Уроки на примере реального web проекта Python, Джанго, Web

Всем доброго времени суток.

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

Разработка будет вестись на Django, я являюсь главным разработчиком.

Очень давно на Пикабу и всегда рад рассказать что-то новое сообществу.

Мне нужно знать интересна эта тема и стоит ли публиковать посты по этапам разработки приложения. Комментарий для минусов внутри.

36

Видеоуроки Python

Короче, есть чувак, зовут Баки Робертс, на ютубе у него целая серия обучалок по разным языкам программирования, включая и питон, есть ли смысл мне их перевести и озвучить, а потом выложить сюда? Объясняет он очень круто и постепенно, я с нуля начинал и мне довольно легко давались его обучалки. Вот ссылка на плейлист по питону:

https://www.youtube.com/playlist?list=PL6gx4Cwl9DGAcbMi1sH6o...

100

Как писать красивый код с PEP 8. Часть #1

Начинаю серию переводов с Real Python.

Как писать красивый код с PEP 8. Часть #1 Python, Перевод, Длиннопост

PEP 8 (иногда PEP8 или PEP-8) - документ, который содержит набор рекомендаций и практик, про то, как писать на Python. Написан в 2001 Гуидо ван Россумом, Барри Уорсо и Ником Когхланом. Основной целью PEP 8 является улучшение читаемости и согласованности кода.


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


В этом руководстве излагаются основные рекомендации, изложенные в PEP 8. Руководство предназначено для начинающих и программистов среднего уровня, и поэтому не затронуты некоторые из наиболее сложных тем. Вы можете узнать об этих темах, прочитав полную документацию по PEP 8 (англ и рус).


К концу этой статьи, вы сможете:


* Написать код Python, соответствующий PEP 8


* Понять обоснование руководящих принципов, изложенных в PEP 8


* Настроить среду разработки так, чтобы вы могли начинать писать Python код, совместимый с PEP 8

Почему нам нужен PEP 8

Читаемость имеет значение. (c) Дзен Python


PEP 8 существует для улучшения читабельности кода Python. Но почему так важна читабельность? Почему написание читаемого кода является одним из главных принципов языка Python?


Как сказал Гвидо ван Россум: «Код читается гораздо чаще, чем пишется». Вы можете потратить несколько минут или целый день на написание фрагмента кода для обработки аутентификации пользователя. После того, как вы написали, вы никогда не будете писать этот код снова. Однако вам определенно придется прочитать его заново. Этот фрагмент кода может остаться частью проекта, над которым вы работаете. Каждый раз, когда вы возвращаетесь к этому файлу, вы должны помнить, что делает этот код и почему вы его написали, поэтому читаемость имеет значение.


Если вы новичок в Python, то Вам будет трудно вспомнить, что делает фрагмент кода, через несколько дней или недель после его написания.  Если вы будете следовать PEP 8, Вы можете быть уверены, что правильно назвали свои переменные. Вы будете знать, что добавили достаточно пробелов, чтобы легче было следовать логическим шагам в вашем коде. Вы также хорошо прокомментируете свой код. Все это будет означать, что Ваш код более читабелен и к нему легче вернуться. Как новичок, следование правилам PEP 8 может сделать изучение Python более приятной задачей.


Следование PEP 8 особенно важно, если вы ищете работу разработчиком. Написание четкого, читаемого кода демонстрирует профессионализм. Он скажет работодателю, что вы понимаете, как правильно структурировать свой код.


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

Соглашение об именах

Явное лучше, чем неявное (с) Дзен Python


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


Примечание. Никогда не используйте однобуквенные имена l (прим: строчное L), O или I (прим: прописное i), поскольку их можно принять за 1 и 0, в зависимости от гарнитуры:


O = 2 # Это может выглядеть так, будто вы пытаетесь переопределить ноль, как число два



Стили именования:


Функции - используйте строчное слово(-а). Разделяйте слова нижним подчеркиванием для улучшения читаемости. Например: function, my_function


Переменные - используйте строчную букву, слово или слова. Разделяйте слова нижним подчеркиванием, чтобы улучшить читаемость. Например: x, var, my_variable


Классы - начинайте каждое слово с заглавной буквы. Не разделяйте слова подчеркиванием. Этот стиль называется ВерблюжийРегистр (прим: чаще всего употребляется всё же английский вариант названия: кэмэл кейс). Например: Model, MyClass


Методы - используйте строчные слова или слова. Разделяйте слова нижним подчеркиванием, чтобы улучшить читаемость. Например: class_method, method


Константы - используйте заглавные буквы, слово или слова. Разделяйте слова подчеркиванием, чтобы улучшить читаемость. (прим: в Python нет отдельного типа для констант. А так как в Python существует благодаря тому, что есть много соглашений, которые должны соблюдаться разработчиками. Поэтому и используется данное обозначение для констант. ) Например: CONSTANT, MY_CONSTANT, MY_LONG_CONSTANT


Модули - используйте короткое строчное слово(-а). Разделяйте слова нижним подчеркиванием, чтобы улучшить читаемость. Например: module.py, my_module.py


Пакеты - используйте короткое строчное слово(-а). Не разделяйте слова подчеркиванием. Например: package, mypackage


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


Как выбрать имена


Выбор имен для ваших переменных, функций, классов и т.д. может быть сложной задачей. При написании кода вы должны тщательно продумать свои варианты именования, так как это сделает ваш код более читабельным. Лучший способ назвать ваши объекты в Python - это использовать описательные имена, чтобы прояснить, что представляет собой объект.


При именовании переменных у вас может возникнуть желание выбрать простые однобуквенные строчные имена, например, x. Но, если вы не используете x в качестве аргумента математической функции, неясно, что представляет собой x. Представьте, что вы храните имя человека в виде строки и хотите использовать нарезку строк, чтобы по-разному форматировать его имя. Вы можете получить что-то вроде этого:


# Не рекомендуется

x = 'John Smith'

y, z = x.split()

print(z, y, sep=', ')

'Smith, John'


Это будет работать, но вы должны будете отслеживать, что представляют собой x, y и z. Это также может сбивать с толку соавторов. Более ясный выбор имен представляет из себя что-то вроде этого:


# Рекомендовано

name = 'John Smith'

first_name, last_name = name.split()

print(last_name, first_name, sep=', ')

'Smith, John'


Точно так же, чтобы уменьшить количество набираемого текста, может возникнуть соблазн использовать сокращения при выборе имен. В приведенном ниже примере мы определили функцию db (), которая принимает один аргумент x и удваивает его:


# Не рекомендуется

def db(x):

return x * 2


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


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


# Рекомендовано

def multiply_by_two(x):

return x * 2


Та же философия применима ко всем другим типам данных и объектам в Python. Всегда старайтесь использовать максимально сжатые, но описательные имена.


Макет кода

Красиво лучше, чем некрасиво. (c) Дзен Python


То, как вы выкладываете свой код, играет огромную роль в его читабельности. В этом разделе вы узнаете, как добавить вертикальный пробел для улучшения читабельности вашего кода. Вы также узнаете, как обрабатывать ограничение в 79 символов, рекомендованное в PEP 8.


Пустые линии


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


Окружите функции и классы верхнего уровня двумя пустыми строками. Функции и классы верхнего уровня должны быть достаточно автономными и обрабатывать отдельные функции. Имеет смысл разместить вокруг них дополнительное вертикальное пространство, чтобы было ясно, что они разделены:


class MyFirstClass:

pass



class MySecondClass:

pass



def top_level_function():

return None



Определения метода внутри классов с одной пустой строкой. Внутри класса все функции связаны друг с другом. Рекомендуется оставлять между ними только одну строчку:


class MyClass:

def first_method(self):

return None


def second_method(self):

return None



Используйте пустые строки внутри функций, чтобы показать четкие шаги. Иногда сложная функция должна выполнить несколько шагов перед оператором return. Чтобы помочь читателю понять логику внутри функции, может быть полезно оставить пустую строку между каждым шагом.


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


def calculate_variance(number_list):

sum_list = 0

for number in number_list:

sum_list = sum_list + number

mean = sum_list / len(number_list)


sum_squares = 0

for number in number_list:

sum_squares = sum_squares + number**2

mean_squares = sum_squares / len(number_list)


return mean_squares - mean**2


Максимальная длина линии и разрыв строки


PEP 8 предполагает, что строки должны быть ограничены 79 символами. Это позволяет открывать несколько файлов рядом друг с другом, а также избегать переноса строк.


Конечно, сохранение утверждений длиной до 79 символов не всегда возможно. В PEP 8 изложены способы, позволяющие операторам выполнять несколько строк.


Python примет продолжение строки, если код содержится в круглых, квадратных и фигурных скобках:


def function(arg_one, arg_two,

arg_three, arg_four):

return arg_one


Если невозможно использовать подразумеваемое продолжение, то вместо него можно использовать обратную косую черту:


from mypkg import example1, \

example2, example3


Однако, если вы можете использовать подразумеваемое продолжение, то вам следует всё же использовать продолжение.


Если разрыв строки должен происходить вокруг бинарных операторов, таких как + и *, это должно происходить перед оператором. Это правило вытекает из математики. Математики сходятся во мнении, что разрыв перед двоичными операторами улучшает читаемость. Сравните следующие два примера.


Ниже приведен пример разрыва перед бинарным оператором:


# Рекомендовано

total = (first_variable

+ second_variable

- third_variable)


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


Теперь давайте рассмотрим пример разрыва после бинарного оператора:


# Не рекомендовано

total = (first_variable +

second_variable -

third_variable)


Здесь сложнее увидеть, какая переменная добавляется, а какая вычитается.


Прерывание перед бинарными операторами создает более читаемый код, поэтому PEP 8 поощряет это. Код, который постоянно ломается после бинарного оператора, по-прежнему соответствует PEP 8. Тем не менее, вам рекомендуется разрывать перед двоичным оператором.


В следующей части рассмотрим отступы и как правильно комментировать код.


Оригинал статьи: https://realpython.com/python-pep8/

Все права принадлежат авторам статьи (команде Real Python).
Мною лишь переведена и адаптирована статья.


Спасибо за внимание!

Показать полностью
20

Программирование на Python. Урок 4 - Срез Строки

Продолжаю озвучивать для своих подписчиков видеоуроки по Питону от Баки Робертса. Предыдущие уроки можно найти в сообществе или в моем плейлисте: https://www.youtube.com/playlist?list=PL_yQY54D7lQB7vIauf8ZB...

24

Стоит ли продолжать переводить уроки по Питону?

В общем, как недавно выяснилось, на ютубе уже есть озвученные ролики Баки Робертса по программированию на Python3, вот по этой ссылке можете посмотреть их:

https://www.youtube.com/channel/UChHyBDvI5AJmcPv36M6PUrQ/pla...

В комментария отпишитесь, стоит ли мне озвучивать дальше, даже учитывая, что этот материал уже переведен. Спасибо за внимание.

23

Программирование на Python. Урок - 5 - Списки

Моя озвучка 5-го урока по программированию на python3.4 от Баки Робертса.

Предыдущие уроки можете найти в этом сообществе: http://pikabu.ru/community/python или в моем профиле.

Вот ссылка на оригинальный плейлист: https://www.youtube.com/playlist?list=PL6gx4Cwl9DGAcbMi1sH6o...

31

[Основы] Часть 1. Для грудничков.

Предполагается, что пост http://pikabu.ru/story/hello_world_4265035 уже прочитан или у вас любой дистрибутив linux.

Предполагается, что аудитория будет заинтересована, и если это будет так, я напишу ещё несколько постов о питоне, чтобы познакомиться с синтаксисом, стандартными структурами данных, некоторыми стандартными библиотеками, чтобы в дальнейшем перейти к разработке на Django.

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


Для начала замануха. Можно много писать о том, какой питон крутой, что его используют для бигдаты, датасаенса, веб-разработки и всего остального. Но это всё сухие слова. Поэтому приведу пару примеров того, где питон используется в качестве основного языка.


Instagram - всеми любимый хостинг фотографий еды и ёбл тупых пёзд. Да, он написан на питоне. Мало того, за фреймворк взят Django, до которого мы доползём, если кроме меня будут желающие ползти. Да ещё и HTTP-сервер они взяли Gunicorn, до которого мы так же доползём. В качестве БД они используют PostgreSQL - мою любимую РСУБД и именно поэтому до неё мы тоже, возможно, доползём.


Reddit - сервис смехуёчков, думаю, все о нём так или иначе слышали. Он написан также на питоне, но на Pyramid фреймворке, а не Django. В качестве БД используются две базы: Cassandra и PostgreSQL. В качестве кэша используется memcached и фейсбуковский mcrouter. В качестве брокера сообщений используется RabbitMQ. Исходный код находится в общем доступе здесь https://github.com/reddit/reddit


exchange.livejournal.com - биржа блогеров ЖЖ, которая недавно открылась. Почему она здесь? Потому что я участвовал в её разработке. Она также написана на Django с базой PostgreSQL.


На этом замануха кончается и начинается моя нелюбимая часть - циклы, ветвления и переменные.

Все куски кода будут являть собой скриншоты Jupyter Notebook, во-первых, потому что мне в нём удобно писать, во-вторых, потому что нечего копировать чужой код.


Переменные

Питон - язык со строгой динамической типизацией. Что это значит?

- Если захочешь сложить число 5 со строкой '7' - тебя наругают. Это называется строгой типизацией. Никаких преведений к "более общему" типу.

- Если в переменной x хранилось число, это не значит, что ей нельзя присвоить строку. Это динамическая типизация. Тип переменной, разумеется, нигде указывать не нужно.

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

Приятной возможностью является параллельное присваивание. Обмен значениями также поддерживается.

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

Есть также множественное присваивание, которое я настоятельно не рекомендую использовать бездумно (это касается неплоских типов данных, о которых поговорим как-нибудь позже):

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

С переменными, вроде, пока всё.


Ветвления

В отличии от Си-подобного синтаксиса, у нас нет ни фигурных скобок для выделения блоков, ни скобок для выделения условного выражения (на самом деле, ничего не мешает обернуть условие в скобки). Блоки выделяются ТОЛЬКО отступами. Здесь нет никаких switch, есть только if, elif и else. Следующий пример, думаю, объяснит всё за меня:

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

А теперь небольшой сюрприз. Несмотря на то, что язык имеет строгую типизацию, сравнения между некоторыми неодинаковыми типами данных (int, float, Decimal) поддерживаются. Например 5 == 5.0 вернёт True, несмотря на то, что 5 - это целое число, а 5.0 - с запятой. Но использование этого считается дурным тоном.


Циклы

Если вы до этого дня не знали слово "итератор" и писали только циклы по индексам, вроде такого for(int i=0; i<10; i++), то придётся привыкать.

Итак, в питоне цикл for проходит итератором по каждому элементу последовательности. Ему глубоко плевать, что внутри последовательности. Число, строка, чьи-то надежды и мечты.

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

Для обычных циклов по индексам существует генератор range. О генераторах тоже позже.


Функции

Функции в питоне объявляются двумя способами:

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

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

Тут, наверное, возникло сразу два вопроса:

Как можно передать функцию аргументом в другую функцию?

Что такое функция высшего порядка?


Т.к. питон - объектно-ориентированный, следовательно, всё в нём является объектом. И функция тоже. Аргументом в функцию может прийти любой объект, в т.ч. и функция:

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

В данном примере много чего интересного:

1) После определения функции (def) можно ввести так называемый docstring, который описывает то, что делает функция. При этом, этот докстринг сохраняется в атрибут __doc__ объекта функции (что только лишний раз говорит о том, что функция - объект)

2) __name__ атрибут содержит имя объекта (функции или класса)

3) h в этом случае - функция высшего порядка. Функция высшего порядка - это функция, которая принимает или возвращает другую функцию. Это пригодится для декораторов, о которых также позже.


Функции можно присваивать другим переменным:

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

Но имя (__name__) останется прежним, т.к. фактически, f и same_func только лишь ссылаются на функцию.

[Основы] Часть 1. Для грудничков. Python, Программирование, Python3, Длиннопост, Цикл, Ветвления, Основы, Переменные

Чёт, кажется, я уже далеко забрёл. В следующей части, если увижу интерес у аудитории, я расскажу о стандартных структурах данных (списки, кортежи, словари, множества) и о том, какие они охуенные и для чего используются.


P.S. Пост писался без подготовки, прямо в редактор постов на пикабу, обо всех недочётах пишите в комментах, закидывайте тапками и помидорами.

Показать полностью 9
28

Для начинающих изучать программирование(Python)

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

1.Майкл Доусон - Программируем на python

Для начинающих изучать программирование(Python) Python, Книги, Подборка, Программирование, Длиннопост

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

2.Марк Лутц - Изучаем Python 4-е издание
Для начинающих изучать программирование(Python) Python, Книги, Подборка, Программирование, Длиннопост

Отличная книга, но слишком подробная для новичка, читать ее стоит в связке с практикой. Нечто вроде: вы захотели написать программу, но вам не хватает более глубоких знаний что бы сделать ее удобней/короче/красивей и т.д.

3.Марк Саммерфилд - Программирование на Python 3

Для начинающих изучать программирование(Python) Python, Книги, Подборка, Программирование, Длиннопост

Присутствует та же динамика что и в первой книге, нет лишней информации, однако она сложнее, все не так разжевано как у Доусона. Стоит отметить что после прочтения Доусона, освоение данной книги особо труда не составит.

4.Марк Лутц - Программирование на Python

Для начинающих изучать программирование(Python) Python, Книги, Подборка, Программирование, Длиннопост

Книга учит применять знания полученный в "Изучаем Python 4-е издание", однако так же перегружена лишней для новичков информацией, воспринять которую будет куда проще после Доусона и Саммерфилда. Эта книга-некий финиш в начальном изучении языка. Освоив ее вы сможете перейти куда к более углубленным работам.

Надеюсь кому то поможет эта подборка. Приятного чтения и удачи в обучении.

Показать полностью 3
26

Hello world!

Я писал тут об одной мощной, простой, интересной библиотеке, которой пользуюсь чуть ли не каждый день, но вдруг осознал, что первый пост лучше сделать просто ознакомительным, для тех, кто совсем-совсем новичок. :)


Поэтому сегодня мы немного поговорим о том, что такое вообще python и попробуем завести его на своём компьютере.


Если ты уже программируешь на python, то этот пост ну прям явно не для тебя. :) Ты можешь просто не читать его вовсе, а лучше написать сюда свой, про что-нибудь интересное из твоего опыта! С преферансом и поэтессами, как полагается. ;)

Hello world! Python, Python3, Программирование, Pycharm, Новичкам, Основы, Интерпретатор, Windows, Длиннопост

Итак, как сообщает нам достоверный источник (википедия), python (я произношу "пайтон", некоторые русскоязычные люди говорят "питон") — язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода. Иными словами, на нём можно быстро и писать код, и разбираться в том, что написал сосед.


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


Применяют ли его на практике?

Безусловно! Python — очень распространённый язык! С его помощью можно делать сайты, обрабатывать данные, работать с машинным обучением и много-много ещё всего интересного. Он используется многими крупными компаниями (например, в Google, чего далеко ходить). С его помощью можно делать как простенькие скрипты для повседневной жизни, так и всерьёз заниматься научной и коммерческой разработкой.


Заинтересовало? Тогда давай попробуем написать и запустить что-нибудь на Python! :)

Hello world! Python, Python3, Программирование, Pycharm, Новичкам, Основы, Интерпретатор, Windows, Длиннопост

Важно понимать, что способов для этого — тьма! Ты можешь писать свою программу хоть в мощной среде разработки с подсветкой синтаксиса и прочими плюшками, хоть в обычном блокноте, хоть вообще в интернете (да и запускать там же). Думается, об этом будет отдельный пост. Сейчас же я просто покажу как можно исполнять команды в интерпретаторе python.


И сразу пара слов о последнем, потому что если ты это читаешь, то, быть может, и не знаешь что это такое.


Python — язык интерпретируемый. Говоря вкратце, это означает, что его инструкции выполняются (интерпретируются) одна за другой последовательно, без компилирования всего и сразу, как, например, в языке Си. Интерпретатор — это как раз-таки специальная программа, которая и занимается интерпретацией.


Чтобы пользоваться языком python, нужно скачать и установить его реализацию с официального сайта https://www.python.org/downloads/.


Я приведу пример на 3-ей серии языка python (3.5.1), поэтому рекомендую скачивать именно её. Для Windows это можно сделать напрямую по этой ссылке. При установке, не забудь поставить галочку на пункте Добавить в PATH, это упростит тебе жизнь в дальнейшем.

Hello world! Python, Python3, Программирование, Pycharm, Новичкам, Основы, Интерпретатор, Windows, Длиннопост

Скачал и установил? Отлично! Давай запустим интерпретатор. Открой командную строку (вбей в Пуск cmd) и введи туда:

python

Интерпретатор запущен! Да, всё так просто! Если всё сделано правильно, то будет что-то вроде:

Hello world! Python, Python3, Программирование, Pycharm, Новичкам, Основы, Интерпретатор, Windows, Длиннопост

Теперь исполним первую команду! Введи:

print('Hello world')

Результат:

Hello world! Python, Python3, Программирование, Pycharm, Новичкам, Основы, Интерпретатор, Windows, Длиннопост

Да, она просто распечатала, то что в скобках, в кавычках на экран! Это выполнилась стандартная функция языка python — print(). Как видишь, здесь, в отличие от Си, например, для неё не нужно ничего присоединять, не нужно никак её обособлять (в этом конкретном случае), не нужно ничего ставить после неё.


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


Кстати, насчет арифметических операций. Ты можешь без зазрения совести совершать их прямо в функции print(). Попробуй, например, по порядку:

print(100 + 1)
print(42 / 7)
print(111111111 * 111111111)

На этом пока всё! Спасибо за внимание! Очень сложно писать первый пост в целом сообществе — не совсем понятен уровень читающих. Поэтому я решил посвятить его абсолютным новичкам. Надеюсь, не прогадал. :)


Спасибо за внимание!

Показать полностью 4
24

Программирование на Python. 1-й видеоурок. Установка оболочки

В прошлом посте http://pikabu.ru/story/videouroki_python_4287213

я спрашивал стоит ли мне переводить и озвучивать ролики Баки Роберста по Питону. На меня подписалось 4 человека да и пост не был заминусован, поэтому выкладываю 1-й урок, если не закидаете тапками, буду озвучивать дальше.

Официальный сайт, где можно скачать Python: https://www.python.org/

Месяц музыки и звука на Пикабу. Делайте громче!

Месяц музыки и звука на Пикабу. Делайте громче!

Рекламный отдел Пикабу и LG опять с конкурсами и подарками. Октябрь торжественно объявляем месяцем музыки и звука. На этот раз мы разыграем не только UltraWide-монитор (вот такой), но и умную колонку с «Алисой» (вот такую). Но обо всем по порядку.


Что происходит?

Вместе с LG мы устраиваем тематические месяцы. Сентябрь был посвящен учебе. Мы советовали сайты с лекциями, проводили мастер-класс по созданию гифок и рассказывали, что делают студенты-технари. Вы писали посты на конкурс и голосовали за лучший. Победителем стал @kka2012. Скоро он получит от нас ультраширокий монитор, чтобы еще быстрее писать свои юридические истории!


Как поучаствовать?

В октября ждем ваши посты на тему музыки и звука. Сделайте подборку любимых подкастов, аудиокниг или музыкальных клипов. Расскажите, как увлеклись монтажом, сделали пару крутых ремиксов или пошли на уроки вокала. Что угодно! Чтобы участвовать в конкурсе, нужно поставить в посте тег #звук или #музыка и метку [моё].


Еще раз коротко:

– Напишите пост на тему месяца (октябрь — музыки и звука) до 25 октября включительно.

– Поставьте тег #звук или #музыка и метку [моё].

– Все! Терпеливо ждите голосования.


За первое место дарим 29-дюймовый монитор LG, а за второе – умную колонку LG с «Алисой». Удачи!

Отличная работа, все прочитано!