Lekcja 5- Import, pętla for, turtle- Eliza S

Lekcja 5- Import, pętla for, turtle- Eliza S
Photo by Tine Ivanič / Unsplash

Importowanie bibliotek:

Importowanie modułów w Pythonie to proces, który pozwala na użycie w programie kodu napisanego w innych plikach, bibliotekach, czy pakietach.

Zalety importowania modułów w Pythonie:

  1. Modularność i organizacja kodu:
    • Zaleta: Moduły pozwalają na podział kodu na mniejsze, logiczne części, co ułatwia zarządzanie dużymi projektami. Dzięki temu kod staje się bardziej przejrzysty i zrozumiały.
  2. Ponowne użycie kodu:
    • Zaleta: Moduły umożliwiają ponowne użycie raz napisanego kodu w różnych częściach projektu lub w innych projektach. To oszczędza czas i redukuje możliwość popełnienia błędów.
  3. Łatwy dostęp do funkcji i bibliotek:
    • Zaleta: Python ma rozbudowaną bibliotekę standardową oraz ogromny ekosystem bibliotek zewnętrznych (dostępnych np. przez PyPI). Dzięki temu możesz szybko zaimportować funkcje, których potrzebujesz, bez konieczności ich samodzielnego implementowania.
  4. Ułatwiona współpraca w zespole:
    • Zaleta: W dużych projektach, gdzie pracuje wiele osób, importowanie modułów pozwala na rozdzielenie pracy między różne zespoły. Każdy zespół może pracować nad innym modułem, a na końcu można je zintegrować.
  5. Izolacja kodu:
    • Zaleta: Kod w modułach jest izolowany od reszty programu. Oznacza to, że zmienne zdefiniowane w jednym module nie wpływają na zmienne w innych modułach, co zmniejsza ryzyko konfliktów nazw i błędów.

Wady importowania modułów w Pythonie

  1. Koszty wydajności:
    • Wada: Importowanie modułów może wprowadzać pewne opóźnienia przy uruchamianiu programu, zwłaszcza jeśli moduły są duże lub złożone. Każdy import wymaga czasu na załadowanie i inicjalizację modułu.
  2. Potencjalne konflikty nazw:
    • Wada: Przy importowaniu wielu modułów istnieje ryzyko konfliktów nazw, zwłaszcza jeśli używasz importowania z aliasami lub importujesz wszystkie funkcje z modułu (from module import *). Może to prowadzić do nieoczekiwanych błędów.
  3. Trudności w debugowaniu:
    • Wada: Kiedy korzystasz z wielu zewnętrznych modułów, debugowanie może być trudniejsze, szczególnie jeśli błąd pochodzi z modułu, którego nie napisałeś samodzielnie. W takim przypadku zrozumienie, co dokładnie dzieje się w module, może być skomplikowane.
  4. Zależności zewnętrzne:
    • Wada: Używanie zewnętrznych modułów może prowadzić do problemów z zależnościami, zwłaszcza gdy moduły wymagają konkretnej wersji Pythona lub innych bibliotek. Utrzymanie tych zależności w dużych projektach może być wyzwaniem.
  5. Złożoność projektu:
    • Wada: W miarę rozrastania się projektu i liczby importowanych modułów, zarządzanie wszystkimi zależnościami i wersjami może stawać się coraz trudniejsze. Wymaga to starannego zarządzania wersjami i środowiskiem pracy.

Wpisujemy słowo import i nazwę biblioteki:

import turtle
import math 

Jeśli biblioteka nie jest zainstalowana, to w terminalu wpisujemy:

pip install nazwa_biblioteki, np. pip install turtle

Pętla for (jest jeszcze pętla while)

Służy do iteracji- czyli powtarzania określonego fragmentu kodu wielokrotnie. Pętla for przechodzi przez każdy element w danym zbiorze (np. liście, ciągu znaków, krotce) i wykonuje dla niego określony blok kodu. Składnia pętli for wygląda następująco:

for element in kolekcja: #Iterujemy po każdym elemencie w kolekcji
# Wykonaj coś tyle razy, ile jest elementów w czymś

Możemy iterować po: liście, krotce, ciągu znaków, słowniku (ale tylko po kluczach).

Często pętla for jest używana w połączeniu z funkcją range(), która generuje sekwencję liczb:

for i in range(10):
  print (i)
# funkcja range() może mieć start, stop i krok: range(start,stop,krok)
# w odpowiedzi dostaniemy kolejno cyfry (zaczynamy od 0)
0
1
2
3
4
5
6
7
8
9
Pamiętamy o wcięciach!
Nie musimy wpisywać nazwy elementu, możemy _
a *= 1 to to samo co a = a * 1
Zastanowić się, jeśli chcemy wrzucać deklarację zmiennej pod pętlę nad tym co się wykona.
Obowiązuje zasada "Dont repeat yourself"- po co pisać kilka razy ten sam warunek, skoro możemy zrobić pętlę.

Żółwik- import modułu, metody:

Moduł turtle w Pythonie to popularny moduł służący do rysowania grafiki wektorowej za pomocą prostych poleceń. Jest często używany w edukacji do nauki programowania, ponieważ pozwala w intuicyjny sposób zrozumieć podstawy programowania poprzez interaktywne rysowanie. Moduł ten symuluje ruch żółwia po ekranie, który pozostawia za sobą ślad, tworząc różne kształty i wzory.

Do czego służy moduł turtle?

  1. Nauka programowania: turtle jest świetnym narzędziem do wprowadzenia podstaw programowania, takich jak pętle, warunki, funkcje, itp. Użytkownicy mogą natychmiast zobaczyć wyniki swoich poleceń, co czyni naukę bardziej interaktywną i angażującą.
  2. Rysowanie grafiki wektorowej: Moduł pozwala na tworzenie różnorodnych kształtów, od prostych linii i kół, po skomplikowane figury geometryczne i fraktale.
  3. Symulacja ruchu: turtle może być używany do symulacji ruchu w dwuwymiarowej przestrzeni, co może być przydatne w nauczaniu fizyki, matematyki, czy robotyki.

Metody:

.forward(odległość) - przesuwa żółwia do przodu
# .left(kąt) - żółwik skręca w lewo o podany kąt
# .right(kąt) - skręca w prawo o podany kąt
# .circle(promień) - rysuje okrąg o podanym promieniu
# .penup() - żółwik przemieszczając się przestanie zostawiać ślad
# .pendown() - ponownie zacznie rysować

T

Turtle, rysowanie schodków w zależności od ilości wprowadzonej przez użytkownika:

import turtle
zolwik = turtle.Turtle()
zolwik.speed(8)
zolwik.shape("turtle")
ilosc_schodow = int(input("Wprowadz ilosc schodow: "))
rozmiar = 40 
for i in range(ilosc_schodow):
    for _ in range(2):
        zolwik.forward(rozmiar)
        zolwik.left(90)
        zolwik.forward(rozmiar * (i + 1))
        zolwik.left(90)
    zolwik.penup()
    zolwik.forward(rozmiar)
    zolwik.pendown()
zolwik.hideturtle()
turtle.exitonclick()