🐍 Python forever
2 subscribers
52 photos
8 files
36 links
Download Telegram
ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«Π’ΠΈΡˆΠ»ΠΈΡΡ‚Β» с полями: Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Ρ†Π΅Π½Π°, ссылка Π½Π° страницу с ΠΏΠΎΠΊΡƒΠΏΠΊΠΎΠΉ, ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ малСнькоС CRUD-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° свой вкус. Π’Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ: MySQL, Python + PyQT. Π’Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ Π½Π° GitHub. ОТидаСмоС врСмя выполнСния: 2-4 часа.

Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ°Ρ коммуникация

Бсылку Π½Π° GitHub с тСстовым Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ присылайтС Π½Π° skkachaev Π² telegram/gmail/Π’ΠΠ”ΠΠœ вмСстС со ссылкой Π½Π° Ρ€Π΅Π·ΡŽΠΌΠ΅.
Π’ Ρ„Π°ΠΉΠ»Π΅ pom.xml Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ вСрсии зависимостСй 5.0 -> 6.0 ΠΈ 1.4 -> 1.5
Π‘Π΄Π΅Π»Π°ΠΉ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Bash
...
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.0</version>
</dependency>

<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4</version>
</dependency>
</dependencies>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>1.4</version>
</plugin>
...
Ярослав, Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь! Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌ Вас Π·Π° ΠΎΡ‚ΠΊΠ»ΠΈΠΊ Π½Π° вакансию "Junior Python Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ". Π’Π°ΡˆΠ΅ Ρ€Π΅Π·ΡŽΠΌΠ΅ показалось Π½Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ интСрСсным.
ΠœΡ‹ Π±Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ Π’Π°ΠΌ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ тСстовоС Π·Π°Π΄Π°Π½ΠΈΠ΅:

ВСстовоС Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΈ дальнСйшая коммуникация:
β€’ Π’ качСствС тСстового задания прСдлагаСтся Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ CRUD ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ https://forms.yandex.ru/u/5fa9755a5869a5b2a49cc9fd/

https://docs.google.com/document/d/1UBxUTuN8kAoP0mBzy5q1FJD2FN5vTdXDzMsDVLUgB1Q/edit
β€’ Π‘Ρ‚Π΅ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ:
β€’
β—¦ Python2/3 (ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ 2)
β€’
β—¦ PyQt 4/5 (ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ 4)

β€’
β—¦ MariaDB.
β€’ ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ:
β€’
β—¦ Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ :)
β€’
β—¦ Π‘Ρ…Π΅ΠΌΠ° Π‘Π”, нСобходимая ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ
β€’
β—¦ ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π°Ρ инструкция ΠΏΠΎ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π½ΠΈΡŽ прилоТСния
β€’
β—¦ ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ. Π§Ρ‚ΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚, ΠΊΠ°ΠΊ ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ

ВСстовоС Π·Π°Π΄Π°Π½ΠΈΠ΅ трСбуСтся Π²Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ Π½Π° github ΠΈ ΠΎΡ‚ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° hh с ссылкой Π½Π° тСстовоС.
Π£Π΄Π°Ρ‡ΠΈ!

Π‘ ΡƒΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ,
ΠœΡƒΡ€Π·ΠΈΠ½Π° Π•Π»Π΅Π½Π°
Forwarded from ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π² Ρ‚Ρ€Π΅Π½Π΄Π°Ρ…
f-строки 2.0
Python 3.8

Π‘Π»ΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ словами, насколько ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ элСгантнСС сдСлали Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ f-строки, появившиСся Π΅Ρ‰Ρ‘ Π² Python 3.6.


Π‘Π»ΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π½ΠΎ Python 3.8 ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΡ… Π΅Ρ‰Ρ‘ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅. Π”ΠΎΠ±Π°Π²ΠΈΠ² Π·Π½Π°ΠΊ = послС ΠΈΠΌΠ΅Π½ΠΈ подставляСмой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π²Ρ‹ смоТСтС вывСсти Π΅Ρ‘ имя ΠΈ Π΅Ρ‘ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±Π΅Π· дублирования ΠΈΠΌΠ΅Π½ΠΈ.

Π”Π΅Π±Π°Π³ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ print станСт Π΅Ρ‰Ρ‘ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅
Forwarded from ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π² Ρ‚Ρ€Π΅Π½Π΄Π°Ρ…
БписковоС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ (быстрый способ)

БписковоС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ β€” самый эффСктивный способ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ любого списка. Π­Ρ‚ΠΎ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ однострочного списка с Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π°. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.
Forwarded from ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π² Ρ‚Ρ€Π΅Π½Π΄Π°Ρ…
ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎ всСм элСмСнтам Π² спискС

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠ΅ΠΌ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠΎ всСм элСмСнтам списка, Π° Π½Π΅ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.
Forwarded from ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π² Ρ‚Ρ€Π΅Π½Π΄Π°Ρ…
Число Π² список Ρ†ΠΈΡ„Ρ€

ΠŸΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ†Π΅Π»ΠΎΠ΅ число Π² список Π΅Π³ΠΎ Ρ†ΠΈΡ„Ρ€.

Ѐункция map() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹ΠΉ Ρ‚ΠΈΠΏ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Π² нашСм случаС это int, Ρ†Π΅Π»Ρ‹Π΅ числа) ΠΈ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (строку, список ΠΈΠ»ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ), элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π² элСмСнты этого Ρ‚ΠΈΠΏΠ°. ПослС этого другая функция list() ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² список.
Forwarded from ΠžΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π² Ρ‚Ρ€Π΅Π½Π΄Π°Ρ…
ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° словаря

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° словаря, Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π΄Π²Π° способа: прямой ΠΈ соврСмСнный.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ значСния ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ словаря Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ порядка исходных словарСй Π² функциях: Ссли ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ мСстами словари a ΠΈ b, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π° 'y' измСнится Π½Π° 2.
Forwarded from Senior Python Developer
Бписок ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

Для ограничСния ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ классов ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ список __all__, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ названия ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅ Π²ΠΈΠ΄Π° from module import * ΠΈΠ· модуля c ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ записью ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ с названиями ΠΈΠ· списка __all__.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ foo ΠΈΠ· Ρ‚Π°ΠΊΠΎΠ³ΠΎ модуля всё Π΅Ρ‰Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ записи from module import foo.
Forwarded from Senior Python Developer
Бписок ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

Для ограничСния ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ классов ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ список __all__, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ названия ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅ Π²ΠΈΠ΄Π° from module import * ΠΈΠ· модуля c ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ записью ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ с названиями ΠΈΠ· списка __all__.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ foo ΠΈΠ· Ρ‚Π°ΠΊΠΎΠ³ΠΎ модуля всё Π΅Ρ‰Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ записи from module import foo.
Forwarded from Senior Python Developer
Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΡƒΠ·Ρ‹Ρ€ΡŒΠΊΠΎΠΌ

Для сортировки списков Π² Python ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ встроСнныС функция sorted() ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ .sorted(), Π½ΠΎ достаточно Π²Π°ΠΆΠ½ΠΎ самому Π·Π½Π°Ρ‚ΡŒ хотя Π±Ρ‹ нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ.

Π‘ΡƒΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ нСсколько ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΎΠ² ΠΏΠΎ массиву. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Ρ‹ элСмСнтов Π² массивС ΠΈ Π² случаС нСсоотвСтствия Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌΡƒ порядку ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ мСстами. Если ΠΏΠ°Ρ€Ρ‹ элСмСнтов находятся Π² Π²Π΅Ρ€Π½ΠΎΠΌ порядкС, Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ происходит.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт окаТСтся Π² ΠΊΠΎΠ½Ρ†Π΅, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ всплывСт словно ΠΏΡƒΠ·Ρ‹Ρ€Π΅ΠΊ. Π—Π°Ρ‚Π΅ΠΌ всС повторяСтся Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΏΠΎΠΊΠ° вСсь массив Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ отсортирован. ПослСдний ΠΏΡ€ΠΎΡ…ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎ отсортированному массиву.
Forwarded from Senior Python Developer
Π”Π΅Π»Π°Π΅ΠΌ HTTP запросы

ΠŸΠ°ΠΊΠ΅Ρ‚ requests абстрагируСт слоТности выполнСния запросов Π·Π° красивым, простым API, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° взаимодСйствии с сСрвисами ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π²Π°ΡˆΠΈΡ… прилоТСниях.

УстанавливаСтся requests стандартным ΠΏΡƒΡ‚Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ pip. Запросы GET, POST, PUT ΠΈ DELETE Π΄Π΅Π»Π°ΡŽΡ‚ΡΡ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятно. Атрибуты Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Response ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΡ‚Π²Π΅Ρ‚Π΅ ΠΎΡ‚ сСрвСра.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠ°ΠΊ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со внСшними API Π²Π΅Π±-сСрвисов, Ρ‚Π°ΠΊ ΠΈ для получСния HTML ΠΊΠΎΠ΄Π° Π²Π΅Π±-страниц.
Forwarded from Senior Python Developer
ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° 😏

browser-historyβ€” это простой, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… зависимостСй, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΠ°ΠΊΠ΅Ρ‚ Python для извлСчСния (ΠΏΠΎΡ‡Ρ‚ΠΈ) всСй истории любого Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π½Π° (ΠΏΠΎΡ‡Ρ‚ΠΈ) любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅.

ДокумСнтация ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π»Π΅ΠΆΠΈΡ‚ здСсь.
Forwarded from Senior Python Developer
Π₯востовая рСкурсия

Π­Ρ‚ΠΎ особый Π²ΠΈΠ΄ рСкурсии, ΠΊΠΎΠ³Π΄Π° функция заканчиваСтся Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ самой сСбя Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Когда это условиС выполняСтся, компилятор Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΡŽ Π² Ρ†ΠΈΠΊΠ» с ΠΎΠ΄Π½ΠΈΠΌ стСк-Ρ„Ρ€Π΅ΠΉΠΌΠΎΠΌ, просто мСняя Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ.

Π’Π°ΠΊ, классичСскоС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ рСкурсивного Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π»Π° return N * fact(N - 1) Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ…Π²ΠΎΡΡ‚ΠΎΠ²ΡƒΡŽ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΡŽ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ стСк-Ρ„Ρ€Π΅ΠΉΠΌΠ° придСтся Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ N.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ рСкурсии хвостовой, Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹-аккумуляторы. Благодаря ΠΈΠΌ функция Π·Π½Π°Π΅Ρ‚ ΠΎ своСм Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ состоянии. ΠŸΡƒΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ acc ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π΅Π½ 1. Π’ΠΎΠ³Π΄Π° запись с хвостовой рСкурсиСй Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ(см ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ).