DEV Community

Cover image for Перспективи навчання..
Григорій Лізанець
Григорій Лізанець

Posted on • Edited on

Перспективи навчання..

Спробую свій перший пост, за порадою шановного викладача Python - завзято кожного дня щось записувати.. Нещодавно почав вивчати цю мову, мотивуючи себе тим, що знання Python розробки допоможуть на шляху до перемоги.. та і після неї, однозначно. Перспективи очевидні і не потребують зайвих роздумів.. тож, гадаю це непоганий початок Нового 2025-го року...
І так, що сьогодні? Відбулася чергова лекція з Пайтон-розробки, на якій швидко пробіглись по словниках і почали вивчати функції..
[print(i) for i in letters]
Конструкція List Comprehention, цікаво - я запитував, чи можна її результат присвоїти змінній? Кажуть - можна. Перевіримо.
До наступної лекції залишилося 1.5 доби, і бажано би засвоїти матеріал ще 2-х уроків та зробити до них ДЗ..

Top comments (13)

Collapse
 
obrizan profile image
Volodymyr Obrizan

Так, можна! Перевага list comprehension у тому, що його можна використовувати в інших виразах (на відмінність від циклу for). Та це є частиною функціонального програмування. Хто хоче глибше вивчити ФП, то я переклав українською туторіал "Функціональне програмування на Python", зробив приклади інтерактивними та додав тести знань.

Collapse
 
gr555 profile image
Григорій Лізанець

Дуже дякую! Обов'язково використаю Ваш досвід!

Collapse
 
empiree profile image
Oleg Dubovoi

Бажаю вам успіху у навчанні! 👍👍👍

Collapse
 
gr555 profile image
Григорій Лізанець

Файно дякую!

Collapse
 
gr555 profile image
Григорій Лізанець

В процесі вивчення мови програмування приходиться постійно експереминтувати. В нашому випадку експеримент це

  • Припущення (Міркування на тему, що вийде, якщо я зроблю так і сяк або інакше?)
  • Виконання (Безпосереднє написання обдуманого вище)
  • Аналіз (Перегляд результатів і продукція висновків з експерименту)

Таким чином, покроково набирається досвід і практика, що навіть при негативних результатах експерименту є дуже і дуже добре!

Collapse
 
gr555 profile image
Григорій Лізанець • Edited

Так, є одна корисна штука, яку в принципі я мав би знати.. Наприклад, що ім'я змінної 'list' - це дурість і інфантилізм. Називаючи змінні або функції ключовими словами програми або мови, закладаєш собі міни на майбутнє.. та і не на майбутнє, а прямо собі під ноги..

num = 124567
src_list = ('%d' % num)[::-1]
res_list = []

for item in src_list:
    res_list.append(int(item))

print(res_list)
Enter fullscreen mode Exit fullscreen mode

Звісно, тут все відпрацювало добре на всіх інтерпретаторах, бо список нарешті названий коректним ім'ям.

Collapse
 
gr555 profile image
Григорій Лізанець • Edited

Так.. єсть ще така штука, як перевірка даних на тип. Звично мабуть, і інтуїтивно я в одному з ДЗ перевірив таким чином:

if type(x) == 'str': # якщо змінна х являється типом рядок...
Enter fullscreen mode Exit fullscreen mode

... Але це, як мені пояснили, це некоректно. Хоча і буде працювати.
А вірно буде зробити так:

if isinstance(x, str): 
Enter fullscreen mode Exit fullscreen mode
Collapse
 
gr555 profile image
Григорій Лізанець • Edited

А ось перший генератор списку, вивчений мною сьогодні:

seventh = [i for i in range(0, 71, 7) if i % 5 != 0]
Enter fullscreen mode Exit fullscreen mode

Тут створюються ітератори в список від нуля до 71 (НЕ включно), з кроком 7, а також НЕ кратні 5. Виходить:

[7, 14, 21, 28, 42, 49, 56, 63]
Enter fullscreen mode Exit fullscreen mode

Ніби непогано.

Collapse
 
obrizan profile image
Volodymyr Obrizan

Григорію, ще була б цікава ваша думка щодо мого підручника курс Python з нуля, який я розробляю останнім часом. Намагався надати матеріал для людей без поперднього досвіду програмування.

Collapse
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
gr555 profile image
Григорій Лізанець

Python це мова, яка одночасно може бути інтерпритована і компільована. Тому, при запуску інтерпритатора він компілює і записує кеш, аби наступного разу робити менше роботи.

Collapse
 
gr555 profile image
Григорій Лізанець

The key of a dict must always be immutable