За что все любят Python
vk f t

За что все любят Python

И сто­ит ли вам его учить

Python сей­час вез­де. Все его любят, хва­лят и реко­мен­ду­ют как пер­вый язык про­грам­ми­ро­ва­ния. Отку­да такой ажи­о­таж и сто­ит ли вам тоже учить­ся это­му язы­ку? Раз­бе­рём­ся.

1. Чистый и понятный синтаксис

Пер­вое, что отме­ча­ет боль­шин­ство раз­ра­бот­чи­ков, когда начи­на­ют­ся раз­го­во­ры про Python — без­упреч­ный и акку­рат­ный код. Что­бы офор­мить любой логи­че­ский блок — напри­мер, содер­жи­мое функ­ции — про­сто исполь­зу­ют отсту­пы и про­бе­лы. Не нуж­но про­ве­рять, не поте­ря­лась ли по пути лиш­няя скоб­ка — всё вид­но сра­зу. Одна коман­да зани­ма­ет одну стро­ку, поэто­му раз­де­ли­те­ли команд тоже не нуж­ны.

Посмот­ри­те, как изящ­но выгля­дит такой син­так­сис:

    
language: Python

a=0
print('Введите число: ')
input(a)
if a==0:
  print('Вы ввели ноль')
else:
  print('Вы однозначно ввели не ноль')


Ско­пи­ро­вать код
Код ско­пи­ро­ван

2. Простота программирования

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

    
language: Java
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public static void main(String[] args) throws IOException {
  String content = new String(Files.readAllBytes(Paths.get("file.txt")));
}


Ско­пи­ро­вать код
Код ско­пи­ро­ван
    
language: Python
file = open('file.txt')
content = file.read()


Ско­пи­ро­вать код
Код ско­пи­ро­ван

3. Классные библиотеки

В какой бы обла­сти вы ни дела­ли про­ект, ско­рее все­го, для это­го уже есть гото­вая Python-биб­лио­те­ка. Обра­бот­ка изоб­ра­же­ний, мате­ма­ти­ка, рас­по­зна­ва­ние речи — для все­го есть инстру­мен­ты.

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

NumPy — машин­ное обу­че­ние и искус­ствен­ный интел­лект;

Django и Flask — веб-разработка и веб-приложения (напри­мер, Pinterest, YouTube и Instagram напи­са­ны на Django);

SQLAlchemy — базы дан­ных и обра­бот­ка боль­ших объ­ё­мов инфор­ма­ции;

Cocos2d — мобиль­ные и бра­у­зер­ные игры;

Tornado — при­ло­же­ния, кото­рые тре­бу­ют высо­кой про­из­во­ди­тель­но­сти и долж­ны рабо­тать одно­вре­мен­но с сот­ней тысяч поль­зо­ва­те­лей;

Bubot — про­грам­ми­ро­ва­ние робо­то­тех­ни­ки, как вари­ант — исполь­зо­ва­ние на Raspberry Pi. 

4. Запускается везде

Python мож­но запу­стить прак­ти­че­ски на любой плат­фор­ме — от КПК до сер­ве­ров — и на любой опе­ра­ци­он­ной систе­ме. Прав­да, есть есте­ствен­ные огра­ни­че­ния. Как толь­ко плат­фор­ма пол­но­стью уста­ре­ва­ет и пере­ста­ёт исполь­зо­вать­ся (напри­мер, Windows 95), пре­кра­ща­ет­ся её под­держ­ка в новых вер­си­ях язы­ка.

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

5. Своя дзен-философия

Счи­та­ет­ся, что фило­со­фию Python при­ду­мал Тим Петерс, и этой фило­со­фии ста­ра­ют­ся при­дер­жи­вать­ся все, кто серьёз­но отно­сит­ся к про­грам­ми­ро­ва­нию на Python. Она опи­сы­ва­ет прин­ци­пы, кото­рые сле­ду­ет исполь­зо­вать каж­до­му раз­ра­бот­чи­ку. Там есть такие пре­крас­ные стро­ки как «Кра­си­вое луч­ше, чем урод­ли­вое», «Чита­е­мость име­ет зна­че­ние» и «Осо­бые слу­чаи не настоль­ко осо­бые, что­бы нару­шать пра­ви­ла».

Что­бы вызвать пол­ный текст The Zen of Python, исполь­зу­ют коман­ду import this.

С чего начать

Офи­ци­аль­ный сайт язы­ка Python — там вся доку­мен­та­ция (на англий­ском, если не зна­е­те — поль­зуй­тесь Яндекс-переводчиком), при­ме­ры кода и всё, что нуж­но знать про язык в целом.

На кур­се Яндекс-практикума «Как стать ана­ли­ти­ком дан­ных» мож­но изу­чить осно­вы Python и полу­чить новую про­фес­сию.

Кни­га Мар­ка Лут­ца «Изу­ча­ем Python» иде­аль­на для нович­ков: рас­пи­са­но всё, что нуж­но.

pythonworld.ru — рус­ско­языч­ный ресурс, цели­ком посвя­щён­ный это­му язы­ку.

Ещё по теме