Podstawy programowania w Pythonie
|
|
- Danuta Wasilewska
- 7 lat temu
- Przeglądów:
Transkrypt
1 Podstawy programowania w Pythonie Wykład 9 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 12 grudnia 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
2 Listy Używanie listy jako stosu Stos to liniowa struktura danych, w której dane dodawane sa tylko na szczyt stosu i tylko ze szczytu stosu sa pobierane. Jest to więc bufor typu LIFO (ang. Last-In-First-Out) ostatni na wejściu, pierwszy na wyjściu. Stosy sa stosowane w systemach komputerowych na wszystkich poziomach funkcjonowania systemów informatycznych. Użycie listy w roli stosu jest bardzo łatwe: Aby dodać element na szczyt stosu, należy użyć metody append(). Aby pobrać elementu ze szczytu stosu, należy użyć metody pop() bez podawania indeksu. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
3 Operacje na stosie Przykład >>> stos = [] # pusty stos >>> stos = [3, 4, 5] >>> stos.append(6) >>> stos [3, 4, 5, 6] >>> stos.pop() 6 >>> stos [3, 4, 5] >>> stos.pop() 5 >>> stos [3, 4] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
4 Listy Używanie listy jako kolejki Kolejka to liniowa struktura danych, w której dane dodawane sa na tylko końcu listy a pobierane sa tylko z poczatku listy. Jest to więc bufor typu FIFO (ang. First-In-First-Out) pierwszy na wejściu, pierwszy na wyjściu. Podobnie jak stosy, listy sa stosowane w systemach komputerowych na wszystkich poziomach funkcjonowania systemów informatycznych. Użycie listy w roli stosu jest bardzo łatwe: Aby dodać element do kolejki, należy użyć metody append(). Aby pobrać elementu z kolejki, należy użyć metody pop(0) dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
5 Operacje na kolejce Przykład >>> kolejka = [] # kolejka pusta >>> kolejka = ["Adam", "Tadeusz", "Michał"] >>> kolejka.append("eryk") # przybywa Eryk >>> kolejka.append("jan") # przybywa Jan >>> kolejka.pop(0) Adam >>> kolejka.pop(0) Tadeusz >>> kolejka [ Michał, Eryk, Jan ] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
6 Zbiory Podstawowe informacje Python posiada również typ danych dla zbiorów. Zbiór jest nieuporzadkowan a kolekcja nie zawierajac a duplikatów. Przy pomocy operatora in można testować przynależność elementu do zbioru. Zbiory umożliwiaja wykonywanie takich podstawowych operacji jak suma, przecięcie, różnica oraz różnica symetryczna. Aby utworzyć zbiór należy użyć nawiasów {} lub funkcji set() z argumentem będacym obiektem iterowalnym. Aby utworzyć zbiór pusty należy użyć funkcji set() bez argumentów a nie nawiasów {}, ponieważ konstrukcja {} tworzy pusty słownik. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
7 Zbiory Przykład (Podstawowe operacje na zbiorach) koszyk = {"gruszka", "kiwi", "gruszka", \ "cytryna", "kiwi", "banan", "mango"} print(koszyk) print("kiwi" in koszyk) print("mandarynka" in koszyk) a = set("abracadabra") b = set("alacazam") print("a =", a) print("b =", b) print("a - b =", a - b) print("a b =", a b) print("a & b =", a & b) print("a ^ b =", a ^ b) # różnica zbiorów # suma zbiorów # iloczyn zbiorów # różnica symetryczna dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
8 Zbiory Przykład (Podstawowe operacje na zbiorach) koszyk = {"gruszka", "kiwi", "gruszka", \ "cytryna", "kiwi", "banan", "mango"} print("\n", koszyk) lista = list(koszyk) print("\n", lista) lista.sort() # sortowanie listy print("\n", lista) koszyk.clear() for owoc in lista: koszyk.add(owoc) print("\n", koszyk, "\n") dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
9 Błędy i wyjatki Błędy składniowe Błędy składniowe, znane również jako błędy parsingu, sa być może najbardziej powszechnym rodzajem błędów, z którymi na poczatku maja do czynienia uczacy się języka Python. Rozważmy przykład: >>> while True print("hello") File "<stdin>", line 1 while True print("hello") ^ SyntaxError: invalid syntax >>> Parser powtarza na wyjściu błędny wiersz i wyświetla mała strzałkę, wskazujac a na najwcześniejszy punkt w wierszu gdzie znaleziono bład. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
10 Błędy i wyjatki Błędy składniowe Bład został wykryty w składniku poprzedzajacym strzałkę: w powyższym przykładzie, bład wykryty został na instrukcji wywołaniu funkcji print, z powodu braku znaku dwukropka (":") przed ta instrukcja. Sa również wyświetlane nazwa pliku i numer linii, aby wiedzieć, gdzie szukać błędu, w przypadku gdy na wejściu znajdował się skrypt. W przypadku wpisania błędnej instrukcji w interpreterze, wyświetlana jest zamiast nazwy pliku nazwa <stdin> oznaczajaca standardowe wejście. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
11 Błędy i wyjatki Błędy wykonania Nawet gdy wyrażenie jest składniowo poprawne, może spowodować bład podczas próby wykonania go. Błędy wykryte podczas wykonania nazywane sa wyjatkami i niekoniecznie musza zakończyć program. Wkrótce dowiemy się jak radzić sobie z nimi w programach Pythona. Większość wyjatków nie jest obsługiwana przez programy a objawiaja się one w komunikatach o błędzie, jak w poniższych przykładach. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
12 Błędy i wyjatki Przykład (Błędy wykonania) >>> 10 * 1/0 Traceback (most recent call last): File "<stdin>", line 1, in <module> ZeroDivisionError: division by zero >>> 4 * 3 + spam Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name spam is not defined >>> "2" + 2 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: Can't convert int object to str implicitly >>> dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
13 Błędy i wyjatki Obsługa wyjatków W poniższym przykładzie użytkownik podaje dane na wejściu aż do momentu, kiedy zostanie wprowadzona poprawna liczba całkowita. Przykład (Instrukcja try) while True: try: a = int(input("podaj liczbę całkowitą: ")) except ValueError: print("to co podałeś nie jest liczbą całkowitą") print("spróbuj ponownie") else: print("brawo! Podałeś liczbę o wartości", a) break dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
14 Błędy i wyjatki Działanie instrukcji try Na poczatku wykonywana jest klauzula try (czyli instrukcje pomiędzy try a except). Jeżeli nie pojawi się żaden wyjatek klauzula except jest pomijana i wykonanie instrukcji try uważa się za zakończone. Jeżeli podczas wykonywania klauzuli try pojawi się wyjatek, reszta niewykonanych instrukcji jest pomijana. Następnie, w zależności od tego, czy jego typ pasuje do typów wyjatków wymienionych w części except, wykonywany jest kod następujacy w tym bloku, a potem interpreter przechodzi do wykonywania instrukcji umieszczonych po całej instrukcji try. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
15 Błędy i wyjatki Działanie instrukcji try W przypadku pojawienia się wyjatku, który nie zostanie dopasowany do żadnego z wyjatków wymienionych w klauzuli except, zostaje on przekazany do do następnych, zewnętrznych instrukcji try. Jeżeli również tam nie zostanie znaleziony odpowiadajacy mu blok except, wyjatek ten nie zostanie wyłapany, stanie nieobsłużonym wyjatkiem, a wykonywanie programu zostanie wstrzymane wraz z pojawieniem się komunikatu podobnego do pokazanego uprzednio. Aby umożliwić obsługę wielu wyjatków, instrukcja try może posiadać więcej niż jedna klauzulę except. W takim przypadku, kod dla co najwyżej jednego wyjatku zostanie wykonany. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
16 Błędy i wyjatki Działanie instrukcji try Kody obsługi wyjatków wykonywane sa tylko dla wyjatków, które zostały zgłoszone w odpowiadajacej im części try, a nie w innych, sasiednich częściach except. Klauzula except może zawierać nazwy wielu wyjatków, podanych w formie listy otoczonej nawiasami okragłymi, np.... except (TypeError, NameError):... pass W ostatniej podanej klauzuli except można pominać nazwę lub nazwy wyjatków w celu obsłużenia dowolnego wyjatku. Można jej również użyć do wypisania komunikatu o błędzie i ponownie zgłosić wyłapany wyjatek (umożliwiajac w ten sposób funkcji wywołujacej wyłapanie zgłoszonego wyjatku). dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
17 Błędy i wyjatki Przykład import sys try: f = open("myfile.txt") s = f.readline() i = int(s.strip()) except IOError as err: print("błąd I/O error: {0}".format(err)) except ValueError: print("nie mogę przekształcić danej", end=" ") print("w liczbę całkowitą.") except: print("nieoczekiwany błąd:", sys.exc_info()[0]) raise dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
18 Błędy i wyjatki Działanie instrukcji try Instrukcja try...except wyposażona jest w opcjonalna klauzulę else, która musi pojawić się za wszystkimi podanymi blokami except. Można po niej umieścić kod, który zostanie wykonany, jeżeli nie zostanie zgłoszony wyjatek. Zastosowanie klauzuli else jest lepsze niż dodatkowy kod do klauzuli try, ponieważ unika się przypadkowego złapania wyjatku, który nie został zgłoszony przez kod chroniony przez klauzulę try. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
19 Błędy i wyjatki Przykład (Klauzula else w instrukcji try) def inputint(prompt): while True: try: a = int(input(prompt)) except: print("to nie jest liczba całkowita") print("spróbuj ponownie") else: return a dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
20 Błędy i wyjatki Przykład (Klauzula else w instrukcji try) def inputfloat(prompt): while True: try: a = float(input(prompt)) except: print("to nie jest liczba typu float") print("spróbuj ponownie") else: return a dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
21 Słowniki Podstawowe informacje Innym użytecznym typem danych w Pythonie jest słownik. Słowniki spotykane sa czasami w innych językach programowania jako pamięć asocjacyjna lub tablice asocjacyjne. W odróżnieniu od sekwencji, które sa indeksowane liczbami, słowniki indeksowane sa kluczami, które moga być obiektami dowolnego, niemutowalnego typu, np. napisy i liczby zawsze moga być kluczami. Listy niemutowalne również moga zostać użyte jako klucze, jeżeli zawieraja napisy, liczby lub listy niemutowalne. Nie można użyć zwykłych list jako kluczy, ponieważ można je modyfikować za pomoca metody append(). dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
22 Słowniki Podstawowe informacje Najlepiej wyobrazić sobie słownik jako nieuporzadkowany zbiór par klucz:wartość, z założeniem, że klucze sa unikalne (w jednym słowniku). Para nawiasów klamrowych tworzy pusty słownik: {}. Umieszczenie listy par klucz:wartość, oddzielonych przecinkami w tych nawiasach dodaje poczatkowe pary klucz:wartość do słownika. W ten sposób słowniki sa wyświetlane na standardowym wyjściu. Głównymi operacjami na słownikach sa dodawanie wartości z jakimś kluczem i pobieranie wartości opatrzonej podanym kluczem. Możliwe jest usuwanie pary klucz:wartość za pomoca instrukcji del. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
23 Słowniki Podstawowe informacje Jeżeli próbuje się przechować klucz, który istnieje już w słowniku, poprzednia wartość zwiazana z tym kluczem jest zapominana. Bład powstaje w wyniku próby pozyskania wartości spod klucza, który nie istnieje w słowniku. Metoda obiektu słownika keys() zwraca listę wszystkich kluczy używanych w słowniku, w porzadku losowym (jeżeli chce się uzyskać posortowana listę kluczy, należy zastosować metodę sort() na tej liście). Aby sprawdzić obecność klucza k w słowniku d należy sprawdzić czy klucz k należy do zbioru kluczy słownika d: k in d.keys(). dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
24 Słowniki Przykład (Podstawowe operacje na słownikach) tel = {"jack": 4098, "sape": 4139} tel["guido"] = 4127 print(tel) print(tel["jack"]) del tel["sape"] tel["irv"] = 4127; print(tel) print("guido" in tel, "jack" not in tel) print(list(tel.keys())) print(sorted(tel.keys())) print(list(tel.values())) print(sorted(tel.values())) print(list(tel.items())) print(sorted(tel.items())) dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
25 Słowniki Przykład (Podstawowe operacje na słownikach) tel = {"jack": 4098, "sape": 4139} tel["guido"] = 4127 print(tel) try: print(tel["jack"]) except: print("brak klucza \"jack\"") try: del tel["jacek"] except: print("brak klucza \"jacek\"") print(tel) dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie / 25
Podstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 6 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 21 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Stosy, kolejki, drzewa Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. VII Jesień 2013 1 / 25 Listy Lista jest uporządkowanym zbiorem elementów. W Pythonie
Bardziej szczegółowoJęzyki i metody programowania
Języki i metody programowania Wykład 4 dr hab. Bożena Woźna-Szcześniak bwozna@gmail.com Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie hab. Andrzeja Zbrzezngo Podstawy języka Python
Bardziej szczegółowoJęzyk Python. Język Python 1/35
Język Python Język Python 1/35 Język Python 2/35 Wstęp Uruchamianie interpretera python Skrypty wykonywalne #!/usr/bin/python #!/usr/bin/env python lub #!/usr/bin/python3 #!/usr/bin/env python3 chmod +x
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 8 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 5 grudnia 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółoworozdział 4: ZMIENNE I INSTRUKCJE
rozdział 4: ZMIENNE I INSTRUKCJE ostatnia modyfikacja: 04.12.18 definicja: zmienna to nazwany kontener służący do przechowywania danych na razie skupimy się na zmiennych przechowujących dane liczbowe i
Bardziej szczegółowoPisząc kod w Pythonie na pewno już nie raz coś poszło nie tak i Shell wypisał komunikat o błędzie podobny do poniższego:
Wyjątki Pisząc kod w Pythonie na pewno już nie raz coś poszło nie tak i Shell wypisał komunikat o błędzie podobny do poniższego: >>> 1/ File "", line 1, in 1/ ZeroDivisionError: integer
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 7 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 28 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoPodstawy bioinformatyki 2017/18
JEZYK PROGRAMOWANIA PYTHON: FUNKCJE, SŁOWNIKI E. Dyguda-Kazimierowicz 1 Definiowanie i korzystanie z funkcji Funkcje pozwalają na wyodrębnienie często powtarzanych działań, dzięki czemu struktura kodu
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 2 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 10 października 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoJęzyki i metody programowania
Języki i metody programowania Wykład 3 dr hab. Bożena Woźna-Szcześniak bwozna@gmail.com Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie hab. Andrzeja Zbrzezngo Wartości boolowskie
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 5 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 7 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoPython. Wprowadzenie. Jolanta Bachan
Python Wprowadzenie Jolanta Bachan Zainstaluj i przetestuj Pythona https://www.python.org/downloads/ print 'Hello world!' operatory numeryczne: + - * / // % ** operatory porównania: ==!= > < >=
Bardziej szczegółowoDynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)
Rok akademicki 2012/2013, Wykład nr 2 2/25 Plan wykładu nr 2 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013
Bardziej szczegółowoProgramowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Bardziej szczegółowoWykład 4. Klasa List Kolejki Stosy Słowniki
Wykład 4 Klasa List Kolejki Stosy Słowniki Klasa List Poważną niedogodnością tablic jako kolekcji danych jest fakt, że muszą one mieć stały rozmiar. Programista musi wiedzieć z góry ile miejsca powinien
Bardziej szczegółowoKurs rozszerzony języka Python
Wykład 1. 6 października 2017 Plan wykładu 1 2 3 4 Plan wykładu 1 2 3 4 Wykładowca: Termin wykładu: piątek, 10:15 12:00, sala 119 Strona wykładu http://www.ii.uni.wroc.pl/ marcinm/dyd/python Materiały
Bardziej szczegółowoWyjątki. try - except
Wyjątki Wyjątek jest obiektem Pythona reprezentującym błąd. Innymi słowy, jest on zdarzeniem, które pojawia się podczas wykonania programu przerywając jego normalny przebieg. Wyobraźmy sobie dłuższy fragment
Bardziej szczegółowoInformatyka 2015/16 wykład 9. Pliki Sterowanie przebiegiem programu cz. 2. Dr inż. Witold Nocoń (p. 230)
Informatyka 2015/16 wykład 9 Pliki Sterowanie przebiegiem programu cz. 2 Dr inż. Witold Nocoń (p. 230) Pliki Pliki dzielą się na dwa rodzaje: Pliki tekstowe (zawartość pliku jest typu string) Pliki binarne
Bardziej szczegółowoProgramowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych zajęć
Bardziej szczegółowoWarsztaty dla nauczycieli
WPROWADZENIE Wyprowadzanie danych: Wyprowadzanie na ekran komunikatów i wyników umożliwia instrukcja wyjścia funkcja print(). Argumentami funkcji (podanymi w nawiasach) mogą być teksty, wyrażenia arytmetyczne
Bardziej szczegółowoINFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227
INFORMATYKA W SZKOLE Dr inż. Grażyna KRUPIŃSKA grazyna@fis.agh.edu.pl D-10 pokój 227 Podyplomowe Studia Pedagogiczne Sortowanie Dane wejściowe : trzy liczby w dowolnym porządku Dane wyjściowe: trzy liczby
Bardziej szczegółowoZaawansowany kurs języka Python
Wykład 4. 23 października 2015 Plan wykładu 1 2 Pliki tekstowe Trwałość obiektów CSV Strumienie Plan wykładu 1 2 Pliki tekstowe Trwałość obiektów CSV Strumienie Protokół iteracyjny Producent Umiem dostarczać
Bardziej szczegółowoLiczby losowe i pętla while w języku Python
Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak
Bardziej szczegółowoWprowadzenie do języka Python
Wprowadzenie do języka Python Mateusz Miotk 3 stycznia 2017 Instytut Informatyki UG 1 Krótko o historii języka Python Python jest potężnym, lecz mimo to łatwym w użyciu językiem programowania opracowanym
Bardziej szczegółowoKurs rozszerzony języka Python
Wykład 2. 13 października 2017 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 4 Plan wykładu Klasy i obiekty 1 Klasy i obiekty 2 3 4 Deklaracja klasy Klasy i obiekty Przykłady class Figura: Pierwsza
Bardziej szczegółowoWykład 8: Obsługa Wyjątków
Wykład 8: Obsługa Wyjątków Wyjątki Wyjątek to sytuacja nienormalna, która pojawia się w trakcie wykonania programu. W językach bez obsługi wyjątków, błędy są wykrywane i obsługiwane ręcznie, zwykle przez
Bardziej szczegółowoZaawansowany kurs języka Python
Wykład 1. 4 października 2013 Plan wykładu 1 2 3 4 Typy proste Kolekcje Instrukcje w języku (przypomnienie) Wykładowca: Termin wykładu: piątek, 10:15 12:00, sala 119 Strona wykładu http://www.ii.uni.wroc.pl/
Bardziej szczegółowoŚrodowisko programisty
Środowisko programisty 1/34 Środowisko programisty Język Python cz. 1 dr inż. Grzegorz Michalski 24 marca 2014 Środowisko programisty 2/34 Wstęp Uruchamianie interpretera python Wykonywalne skrypty #!/usr/bin/python
Bardziej szczegółowoPodstawy bioinformatyki 2017/18
JEZYK PROGRAMOWANIA PYTHON: SEKWENCJE (ŁAŃCUCHY, LISTY, KROTKI), METODY LIST E. Dyguda-Kazimierowicz 1 Sekwencje: indeksowanie i wycinanie Poznane dotąd obiekty łańcuchowe należą do typu danych złożonych
Bardziej szczegółowoSpis treści. Funkcje. 1 Funkcje 1.1 Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie 7
Spis treści 1 Funkcje 1.1 Zadanie 1 1.2 Zadanie 2 1.3 Zadanie 3 1.4 Zadanie 4 1.5 Zadanie 5 1.6 Zadanie 6 1.7 Zadanie 7 Funkcje Przy programowaniu często zdarza się, że pewne czynności chcemy wykonywać
Bardziej szczegółowoPodstawy Pythona. Krzysztof Gdawiec. Instytut Informatyki Uniwersytet Śląski
Podstawy Pythona Krzysztof Gdawiec Instytut Informatyki Uniwersytet Śląski Słownik jest typem mutowalnym. Każdy element to para: klucz wartość. W celu stworzenia słownika pary klucz wartość umieszczamy
Bardziej szczegółowoSemantyka i Weryfikacja Programów - Laboratorium 3
Semantyka i Weryfikacja Programów - Laboratorium 3 Modelowanie układów mikroprocesorowych - część II Wykonywanie całego programu Cały program wykonywany jest przez funkcję intpprog. Jedynym argumentem
Bardziej szczegółowoPython wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA
Python wprowadzenie Warszawa, 24 marca 2017 Python to język: nowoczesny łatwy w użyciu silny można pisać aplikacje Obiektowy klejący może być zintegrowany z innymi językami np. C, C++, Java działający
Bardziej szczegółowoInformatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski
Informatyka- wykład Podstawy programowania w Pythonie dr Marcin Ziółkowski Instytut Matematyki i Informatyki Akademia im. Jana Długosza w Częstochowie 23 listopada 2015 r. JĘZYK PYTHON Język Python jest
Bardziej szczegółowoSpis treści. Dekoratory. 1 Dekoratory 1.1 Zadanie Zadanie Zadanie Zadanie 4
Spis treści 1 Dekoratory 1.1 Zadanie 1 1.2 Zadanie 2 1.3 Zadanie 3 1.4 Zadanie 4 Dekoratory Dekoratory w Pythonie służą do zastępowania zdefiniowanych przez nas funkcji przez funkcje (lub inne obiekty)
Bardziej szczegółowoMetody getter https://www.python-course.eu/python3_object_oriented_programming.php 0_class http://interactivepython.org/runestone/static/pythonds/index.html https://www.cs.auckland.ac.nz/compsci105s1c/lectures/
Bardziej szczegółowoPodstawy programowania. rozdział 8: WYJĄTKI. ostatnia modyfiaaja:
rozdział 8: WYJĄTKI ostatnia modyfiaaja: 27.11.17 wyjątek (ang. exception): wyjątek to speayfazna dana, powstająaa w sposób automagiczny w ahwili wystąpienia błędu, itóry uniemożliwia iontynuowanie wyionania
Bardziej szczegółowoJęzyk skryptowy: Laboratorium 1. Wprowadzenie do języka Python
Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python Język PYTHON Podstawowe informacje Python to język skryptowy, interpretowany - co oznacza, że piszemy skrypt, a następnie wykonujemy go za
Bardziej szczegółowoPodstawy programowania. Python wykład 6
Podstawy programowania Python wykład 6 Funkcja wbudowana chr() Wywołanie funkcji chr() z argumentem m zwraca łańcuch znaków reprezentujący znak, którego punktem kodowym w Unicode jest liczba całkowita
Bardziej szczegółowoStruktury danych: stos, kolejka, lista, drzewo
Struktury danych: stos, kolejka, lista, drzewo Wykład: dane w strukturze, funkcje i rodzaje struktur, LIFO, last in first out, kolejka FIFO, first in first out, push, pop, size, empty, głowa, ogon, implementacja
Bardziej szczegółowoWykład 5 Wybrane zagadnienia programowania w C++ (c.d.)
Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.) Kontenery - - wektor vector - - lista list - - kolejka queue - - stos stack Kontener asocjacyjny map 2016-01-08 Bazy danych-1 W5 1 Kontenery W programowaniu
Bardziej szczegółowoProgramowanie obiektowe
Wykład 4 Piotr Błaszyński Wydział Inmatyki Zachodniopomorskiego Uniwersytetu Technologicznego 16 lutego 2018 i zawieranie się, gromadzenie elementów nowa klasa powstaje przez użycie obiektów klas już istniejących,
Bardziej szczegółowoJęzyk Python (2) Język Python (2) 1/36
Język Python (2) Język Python (2) 1/36 Język Python (2) 2/36 Podstawy funkcji Pojęcia podstawowe Instrukcja def tworzy obiekt funkcji i przypisuje go do nazwy Instrukcja return przekazuje obiekt wynikowy
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 4 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 24 października 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoPodstawy Programowania ZŁOŻONE TYPY DANYCH, LOGIKA CYFROWA I MACIERZE
Podstawy Programowania ZŁOŻONE TYPY DANYCH, LOGIKA CYFROWA I MACIERZE Michał Bujacz bujaczm@p.lodz.pl B9 Lodex 27 godziny przyjęć: środy i czwartki 1:-11: http://www.eletel.p.lodz.pl/bujacz/ 1 Pytania
Bardziej szczegółowoKontenery i iteratory. Wykorzystanie kontenerów w praktyce.
Instrukcja laboratoryjna nr 2 Programowanie w języku C 2 (C++ poziom zaawansowany) Kontenery i iteratory. Wykorzystanie kontenerów w praktyce. dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż.
Bardziej szczegółowoWstęp do Informatyki
Wstęp do Informatyki dr hab. Bożena Woźna-Szcześniak, prof. AJD bwozna@gmail.com Jan Długosz University, Poland Wykład 8 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 8 1 / 32 Instrukcje iteracyjne
Bardziej szczegółowoPython. Skąd taka nazwa? Kurs systemu UNIX 1
Python Skąd taka nazwa? Kurs systemu UNIX 1 Cechy języka marketing Obiektowy (dużo prostszy od C++) Darmowy Nie tylko Unix (choć tam najpopularniejszy) Wiele bibliotek (np. Tkinter, czyli interfejs do
Bardziej szczegółowoPython jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń:
W pierwszym kroku nauczymy się uruchamiać w Pythonie tradycyjny* program ". Dzięki temu nauczysz się pisać w języku Python, a także zapisywać i uruchamiać swoje pythonowe programy. *Jest taka tradycja,
Bardziej szczegółowoStruktury. Przykład W8_1
Struktury Struktury pozwalają na grupowanie zmiennych różnych typów pod wspólną nazwą. To istotnie ułatwia organizacje danych, które okazują się w jednym miejscu kodu programu. To jest bardzo ważne dla
Bardziej szczegółowoWykład 7 Abstrakcyjne typy danych słownik (lista symboli)
Wykład 7 Abstrakcyjne typy danych słownik (lista symboli) Definicja słownika: Słownik (tablica lub lista symboli) to struktura danych zawierająca elementy z kluczami, która pozwala na przeprowadzanie dwóch
Bardziej szczegółowoUwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)
Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie
Bardziej szczegółowoLaboratorium z przedmiotu Programowanie obiektowe - zestaw 04
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych kolekcji. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych
Bardziej szczegółowoPHP: bloki kodu, tablice, obiekty i formularze
1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują
Bardziej szczegółowoListy, krotki, słowniki, funkcje
Listy, krotki, słowniki, funkcje Listy Lista jest najbardziej elastycznym typem obiektu uporządkowanej kolekcji. Może zawierać różne typy danych - liczby, łańcuchy znaków, a nawet inne listy. Tworzy się
Bardziej szczegółowoZakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska
1 Przykład wyliczania wyrażeń arytmetycznych Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Copyright
Bardziej szczegółowoProgramowanie i struktury danych 1 / 44
Programowanie i struktury danych 1 / 44 Lista dwukierunkowa Lista dwukierunkowa to liniowa struktura danych skªadaj ca si z ci gu elementów, z których ka»dy pami ta swojego nast pnika i poprzednika. Operacje
Bardziej szczegółowoWstęp do programowania 2
Wstęp do programowania 2 wykład 10 Zadania Agata Półrola Wydział Matematyki UŁ 2005/2006 http://www.math.uni.lodz.pl/~polrola Współbieżność dotychczasowe programy wykonywały akcje sekwencyjnie Ada umożliwia
Bardziej szczegółowoPython podstawy programowania
Python podstawy programowania Krzysztof Katarzyński Centrum Astronomii UMK W roku 1945 rozpętał się pokój. Latajacy Cyrk Monty Pythona Program w Pythonie jako plik tekstowy Konsola tekstowa Pythona umożliwia
Bardziej szczegółowoPodstawy Programowania
Podstawy Programowania Monika Wrzosek Instytut Matematyki Uniwersytet Gdański Matematyka 2017/18 Monika Wrzosek (IM UG) Podstawy Programowania 1 / 119 Sprawy organizacyjne E-mail: mwrzosek@mat.ug.edu.pl
Bardziej szczegółowoJęzyk C++ wykład VIII
Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 2 3 4 Obiektowość języka C++ ˆ Klasa (rozszerzenie struktury), obiekt instancją klasy, konstruktory i destruktory ˆ Enkapsulacja - kapsułkowanie,
Bardziej szczegółowoMyśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści
Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop. 2017 Spis treści Przedmowa 11 1. Jak w programie 21 Czym jest program? 21 Uruchamianie interpretera języka Python 22 Pierwszy
Bardziej szczegółowoKurs języka Python. Wykład 11. Marcin Młotkowski. 4 stycznia Kontrola poprawności podczas biegu programu. 2 Testowanie oprogramowania
Wykład 11. 4 stycznia 2010 1 Kontrola poprawności podczas biegu programu 2 3 4 Asercje Asercja to formuła logiczna; Asercji używa się do kontrolowania czy np. wartość zmiennej ma odpowiedni typ lub mieści
Bardziej szczegółowoStruktury danych (I): kolejka, stos itp.
Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Struktury danych (I): kolejka, stos itp. Struktury danych (I): kolejka, stos itp. Struktura danych stanowi sposób uporządkowania
Bardziej szczegółowoProgramowanie w Sieci Internet. Python: Operacje z plikami oraz obsługa wyjątków
Programowanie w Sieci Internet Python: Operacje z plikami oraz obsługa wyjątków Kraków, 5 grudnia 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Otwieranie plików Otwieranie plików jest realizowane
Bardziej szczegółowoĆwiczenie 3. Python 3: Python 3: Funkcje, moduły i operacje na plikach
Wizualizacja danych Ćwiczenie 3 Python 3: Python 3: Funkcje, moduły i operacje na plikach Python Comprehension Jest to mechanizm służący do generowania kolekcji (lista, słownik, zbiór) na podstawie jednowierszowej
Bardziej szczegółowoWykład 5. SQL praca z tabelami 2
Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,
Bardziej szczegółowoWykład 3 Składnia języka C# (cz. 2)
Wizualne systemy programowania Wykład 3 Składnia języka C# (cz. 2) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Metody 2 Metody W C# nie jest
Bardziej szczegółowoAlgorytmy i struktury danych
Algorytmy i struktury danych 4. Łódź 2018 Suma szeregu harmonicznego - Wpisz kod programu w oknie edycyjnym - Zapisz kod w pliku harmonic.py - Uruchom skrypt (In[1]: run harmonic.py) - Ten program wykorzystuje
Bardziej szczegółowoDelphi Laboratorium 3
Delphi Laboratorium 3 1. Procedury i funkcje Funkcja jest to wydzielony blok kodu, który wykonuje określoną czynność i zwraca wynik. Procedura jest to wydzielony blok kodu, który wykonuje określoną czynność,
Bardziej szczegółowoJęzyki programowania wysokiego poziomu. PHP cz.2.
Języki programowania wysokiego poziomu PHP cz.2. Instrukcje strukturalne PHP Instrukcje strukturalne Instrukcja grupująca (blok instrukcji) Instrukcja warunkowa, if-else Instrukcja wyboru, switch-case
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Podstawowe konstrukcje programistyczne Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) WP w. II Jesień 2013 1 / 34 Przypomnienie Programowanie imperatywne Program
Bardziej szczegółowoWyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoObliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303
Wykład 9 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 stos i operacje na stosie odwrotna notacja polska języki oparte na ONP przykłady programów J. Cichoń, P. Kobylański Wstęp
Bardziej szczegółowoPodstawy i języki programowania
Podstawy i języki programowania Laboratorium 8 - wprowadzenie do obsługi plików tekstowych i wyjątków mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 11 grudnia 2017 1 / 34 mgr inż. Krzysztof
Bardziej szczegółowoNaukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem
Moduł 1 1. Wprowadzenie do języka Python Python jest dynamicznym językiem interpretowanym. Interpretowany tzn. że kod, który napiszemy możemy natychmiast wykonać bez potrzeby tłumaczenia kodu programistycznego
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Jak pisać poprawne programy. Kilka ładnych rozwiązań. Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk(Wydział Fizyki) WP w. V Jesień 2014 1 / 33 Poważne decyzje Problem Przed
Bardziej szczegółowoWSTĘP DO INFORMATYKI. Struktury liniowe
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk Struktury liniowe www.agh.edu.pl STRUKTURY LINIOWE SEKWENCJE Struktury
Bardziej szczegółowoZmienne i struktury dynamiczne
Zmienne i struktury dynamiczne Zmienne dynamiczne są to zmienne, które tworzymy w trakcie działania programu za pomocą operatora new. Usuwa się je operatorem delete. Czas ich występowania w programie jest
Bardziej szczegółowoProgramowanie w C++ Wykład 6. Katarzyna Grzelak. 1 kwietnia K.Grzelak (Wykład 6) Programowanie w C++ 1 / 43
Programowanie w C++ Wykład 6 Katarzyna Grzelak 1 kwietnia 2019 K.Grzelak (Wykład 6) Programowanie w C++ 1 / 43 Pojęcia z poprzednich wykładów Tablica to ciag obiektów tego samego typu, zajmujacy ciagły
Bardziej szczegółowoSystem operacyjny Linux
Paweł Rajba pawel.rajba@continet.pl http://kursy24.eu/ Zawartość modułu 7 Język awk Wprowadzenie Schemat programu Konstrukcja wzorców Konstrukcja wyrażeń regularnych Struktury kontrolne Predefiniowane
Bardziej szczegółowoDynamiczne struktury danych
Dynamiczne struktury danych 391 Dynamiczne struktury danych Przez dynamiczne struktury danych rozumiemy proste i złożone struktury danych, którym pamięć jest przydzielana i zwalniana na żądanie w trakcie
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Funkcje Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. V Jesień 2013 1 / 32 Funkcje Funkcje w matematyce f : D W D dziedzina W zbiór wartości Funkcja może
Bardziej szczegółowoKURS C/C++ WYKŁAD 2. char znak; znak = a ; Program 2 #include<stdio.h> void main() { char znak; while( (znak = getchar() )!= t ) putchar(znak); }
KURS C/C++ WYKŁAD 2 Instrukcje iteracyjne Instrukcja while Składnia tej instrukcji jest następująca: while (wyrażenie) instrukcja W pętli while wykonanie instrukcji powtarza się tak długo, jak długo wartość
Bardziej szczegółowoSwift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)
Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.) przeznaczony do programowania zarówno pod ios jak i Mac OS X bazuje na logice Objective-C bez kompatybilności
Bardziej szczegółowoAlgorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
Bardziej szczegółowoProgramowanie i projektowanie obiektowe
Programowanie i projektowanie obiektowe Metody i dziedziczenie Paweł Daniluk Wydział Fizyki Jesień 2015 P. Daniluk (Wydział Fizyki) PO w. V Jesień 2015 1 / 31 Metody Przypomnienie Obiekty odpowiadają za
Bardziej szczegółowoKurs programowania. Wykład 3. Wojciech Macyna. 22 marca 2019
Wykład 3 22 marca 2019 Klasy wewnętrzne Klasa wewnętrzna class A {... class B {... }... } Klasa B jest klasa wewnętrzna w klasie A. Klasa A jest klasa otaczajac a klasy B. Klasy wewnętrzne Właściwości
Bardziej szczegółowoPobieranie argumentów wiersza polecenia
Pobieranie argumentów wiersza polecenia 2. Argumenty wiersza polecenia Lista argumentów Lista argumentów zawiera cały wiersz poleceń, łącznie z nazwą programu i wszystkimi dostarczonymi argumentami. Przykłady:
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Podstawowe konstrukcje programistyczne Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) WP w. II Jesień 2014 1 / 38 Przypomnienie Programowanie imperatywne Program
Bardziej szczegółowoPytania dla języka Python
XIV OIJ, zawody I stopnia, tura testowa 16 września 2019 1 stycznia 2020 Poniżej znajdują się pytania testowe z zawodów I stopnia XIV Olimpiady Informatycznej Juniorów () na teście wiedzy (do rozwiązania
Bardziej szczegółowoWprowadzenie do programowania
do programowania ITA-104 Wersja 1 Warszawa, Wrzesień 2009 ITA-104 do programowania Informacje o kursie Zakres tematyczny kursu Opis kursu Kurs przeznaczony jest do prowadzenia przedmiotu do programowania
Bardziej szczegółowoWstęp do Informatyki dla bioinformatyków
Wstęp do Informatyki dla bioinformatyków Wykład 12 - Programowanie w BASHu Trochę bardziej zaawansowane Bartek Wilczyński 25.1.2016 Organizacyjne Bardzo proszę o wypełnienie ankiet w USOS Szczególnie zależy
Bardziej szczegółowoJęzyk Python (3) Język Python (3) 1/35
Język Python (3) Język Python (3) 1/35 Język Python (3) 2/35 Kod samotestujący Tworzenie def t e s t e r ( ) : p r i n t ( "Wywołanie funkcji testujacych..." ) i f n ame == main : t e s t e r ( ) Język
Bardziej szczegółowoAlgorytmy i złożoności. Wykład 3. Listy jednokierunkowe
Algorytmy i złożoności Wykład 3. Listy jednokierunkowe Wstęp. Lista jednokierunkowa jest strukturą pozwalającą na pamiętanie danych w postaci uporzadkowanej, a także na bardzo szybkie wstawianie i usuwanie
Bardziej szczegółowo