Podstawy programowania w Pythonie

Podobne dokumenty
Podstawy programowania. Python wykład 6

Podstawy programowania w Pythonie

Podstawy programowania w Pythonie

Podstawy programowania w Pythonie

Podstawy programowania w Pythonie

Listy, krotki, słowniki, funkcje

Podstawowe elementy języka Python III. Wykład 3. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 50 / 277

Podstawy bioinformatyki 2017/18

Wstęp do Informatyki i Programowania (kierunek matematyka stosowana)

Języki i metody programowania

Podstawy programowania w Pythonie

Języki i metody programowania

Język Python. Język Python 1/35

Funkcje są prawdopodobnie najważniejszą częścią każdego poważnego programu (w każdym języku programowania).

Wstęp do programowania

Wstęp do informatyki. Python 1

Środowisko programisty

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Podstawy programowania w Pythonie

Wstęp do Pythona. Janusz Szwabiński. Python w obliczeniach numerycznych (C) 2005 Janusz Szwabiński p.1/36

Wstęp do programowania

Język Python (2) Język Python (2) 1/36

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Wstęp do programowania

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python

Podstawy Pythona. Krzysztof Gdawiec. Instytut Informatyki Uniwersytet Śląski

Podstawy i języki programowania

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Struktury Struktura polami struct struct struct struct

Typy danych, cd. Łańcuchy znaków

Spis treści. Funkcje. 1 Funkcje 1.1 Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie 7

Podstawy programowania w Pythonie

Wstęp do programowania

Programowanie w języku Python. Grażyna Koba

Środowisko programisty

Środowisko programisty

Środowisko programisty

Python dla początkujących. Małgorzata Niewiem AGH, GGiOŚ, Katedra Geoinformatyki i Informatyki Stosowanej SATIM Satelitarny Monitoring

Podstawy bioinformatyki 2017/18

Programowanie w CLIPS

Algorytmy i struktury danych

Podstawy programowania w Pythonie

Wrocław, Wstęp do informatyki i programowania: liczby pierwsze. Wydział Matematyki Politechniki Wrocławskiej.

Wykresy i interfejsy użytkownika

Podstawy Programowania

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Ćwiczenie 3. Python 3: Python 3: Funkcje, moduły i operacje na plikach

Wprowadzenie do Python

Podstawy programowania w języku C++

Środowisko programisty

Wstęp do programowania

C-struktury wykład. Dorota Pylak

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Podstawy Programowania

Programowanie w Ruby

Podstawy bioinformatyki 2017/18

C-struktury wykład. Dorota Pylak

Języki programowania. Przetwarzanie tablic znaków. Część druga. Autorzy Tomasz Xięski Roman Simiński

Wartości domyślne, przeciażenia funkcji

Informatyka I. Wykład 4. Tablice. Dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Podstawy programowania

Wstęp do Informatyki

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

4. Funkcje. Przykłady

Warsztaty dla nauczycieli

Programowanie obiektowe Wykład 3. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/21

Python. Skąd taka nazwa? Kurs systemu UNIX 1

Programowanie i struktury danych

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Przetwarzanie tekstu 2. Operacje na plikach tekstowych w systemie Linux

Wstęp do programowania

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Programowanie robota mobilnego E-puck w języku Python

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

Zajęcia 5 łańcuchy znaków (ciąg dalszy) i funkcje

Programowanie obiektowe w C++ Wykład 12

WYRAŻENIA ALGEBRAICZNE

Stałe oznaczane są słowem kluczowym final. Do stałej wartość można przypisać tylko raz. Dobrą konwencją jest nazywanie stałych wielkimi literami

Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Tablice deklaracja, reprezentacja wewnętrzna

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

Tworzenie listy polega na podaniu jej elementów oddzielonych przecinkiem w nawiasach kwadratowych:

Języki programowania obiektowego Nieobiektowe elementy języka C++

Podstawowe algorytmy i ich implementacje w C. Wykład 9

Programowanie obiektowe

Prolog Wejście / wyjście r

Programowanie obiektowe

Algorytmy i struktury danych

Tablice. Jones Stygar na tropie zmiennych

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117).

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie. Krzysztof Banaś Podstawy programowania 1

1 P roste e t ypy p d a d n a ych c - c ąg ą g d a d l a szy 2 T y T py p z ł z o ł żo ż ne e d a d n a ych c : T BLICE

Podstawy Informatyki. Wykład 6. Struktury danych

Transkrypt:

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 w Pythonie 05.12.2012 1 / 17

Krotki Krotka (ang. tuple) to struktura danych będaca odzwierciedleniem matematycznej n-ki, tj. uporzadkowanego ciagu wartości. Elementy krotki nie musza być tego samego typu. Krotki sa niemodyfikowalne, ale ich elementy moga być wartościami typów modyfikowalnych. Odczyt elementu krotki wymaga podania indeksu liczbowego żadanego elementu. y >>> t = () # krotka pusta >>> t = (6,) # krotka jednoelementowa dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 2 / 17

krotki y nais = "Anais Nin", 1903 anais ( Anais Nin, 1903) nais[0] Anais Nin nais[1] 1903 >>> # Pakowanie n = ("Anais", "Nin", 1903, "pisarka", "Delta Wenus") n[2] 1903 # Rozpakowanie >>> imie, nazwisko, rok_ur, profesja, ksiazka = an >>> profesja pisarka dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 3 / 17

Funkcje zwracajace krotki Funkcja może zawsze zwrócić tylko jedna wartość, ale poprzez zgrupowanie dowolnie wielu wartości w krotkę, może zwrócić ja jako pojedyncza wartość. import math def main(): r = float(input("podaj promień koła: ")) op = obwod_i_pole(r) print(op[0], op[1]) def obwod_i_pole(r): obwod = 2 * math.pi * r pole = math.pi * r * r return (obwod, pole) dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 4 / 17

Istnieje w Pythonie pewna liczba złożonych typów danych, używanych do grupowania innych wartości. Najbardziej użytecznym typem jest lista, która można zapisać jako listę elementów poprzedzielanych przecinkami, umieszczona w kwadratowych nawiasach. Elementy listy nie musza być tego samego typu. = ['spam', 'eggs', 6, 123] ['spam', 'eggs', 6, 123] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 5 / 17

Podobnie jak indeksy łańcuchów znaków, indeksy listy rozpoczynaja się od wartości 0. = ['spam', 'eggs', 6, 123] [0] 'spam' [3] 123 [-2] 6 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 6 / 17

moga być przedmiotem operacji wykrawania, sklejania itd. = ['spam', 'eggs', 6, 123] [1:-1] ['eggs', 6] [:2] + ['bacon', 2 * 2] ['spam', 'eggs', 'bacon', 4] >>> 2 * a[:3] + ['hi!'] ['spam', 'eggs', 6, 'spam', 'eggs', 6, 'hi!'] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 7 / 17

Odmiennie niż w przypadku napisów, które sa niezmienne, można zmieniać poszczególne elementy listy. = ['spam', 'eggs', 6, 123] [2] = a[2] + 23 ['spam', 'eggs', 29, 123] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 8 / 17

Możliwe jest także przypisanie do wycinka, co może zmienić długość listy. = ['spam', 'eggs', 6, 123] >>> # Zastąp pewne elementy:... a[0:2] = [1, 12] [1, 12, 6, 123] >>> # Usuń pewne elementy:... a[0:2] = [] [6, 123] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 9 / 17

(dokończenie) [6, 123] >>> # Wstaw pewne elementy:... a[1:1] = ['ab ', 'xy '] [6, 'ab ', 'xy ', 123] >>> # Wstaw kopię siebie na początek:... a[:0] = a [6, 'ab ', 'xy ', 123, 6, 'ab ', 'xy ', 123] >>> # Wyczyść listę:... a[:] = [] [] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 10 / 17

Wbudowana funkcja len może być stosowana także do list. = ["spam", "eggs", 6, 123] ['spam', 'eggs', 6, 123] >>> len(a) 4 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 11 / 17

Możliwe jest zagnieżdżanie list, tzn. tworzenie list, których elementami sa inne listy. >>> b = [2, 3] = [1, b, 4] [1, [2, 3], 4] >>> len(a) 3 [1] [2, 3] [1][0] 2 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 12 / 17

Można dodać dowolny element na końcu listy przy pomocy metody append. >>> b = [2, 3] = [1, b, 4] [1, [2, 3], 4] [1].append('dodany') [1, [2, 3, 'dodany'], 4] >>> b [2, 3, 'dodany'] [1] \IS\ b True dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 13 / 17

Można usunać element listy o podanym indeksie, jak również wycinek listy, przy pomocy instrukcji del. = [-1, 1, 66.25, 333, 333, 1234.5] >>> del a[0] [1, 66.25, 333, 333, 1234.5] >>> del a[2:4] 1, 66.25, 1234.5] >>> del a[:] [] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 14 / 17

napisy Wybrane metody klasy str partition(sep) Dzieli łańcuch znaków w miejscu pierwszego wystapieniu separatora sep i zwraca trójelementowa krotkę zawierajac a część przed separatorem, separator, oraz część po separatorze. Jeżeli separator nie zostanie znaleziony, zwraca trójelementowa krotkę zawierajac a cały łańcuch jako pierwsza składowa krotki oraz dwa ciagi puste jako pozostałe składowe krotki. split(sep = None, maxsplit = -1) Zwraca listę słów w łańcuchu, używajac separatora set jako ogranicznika. Jeżeli został podany argument maxsplit, wynikowa lista będzie mieć co najwyżej maxsplit + 1 elementów. Jeżeli argument maxsplit nie jest określony, lub równy -1, to nie ma limitu na liczbę podziałów. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 15 / 17

napisy Dodatkowe uwagi o argumencie sep metody split 1 Jeżeli podano argument sep, to kolejne jego wystapienia w łańcuchu nie sa grupowane razem i uważa się, że oddzielaja one puste łańcuchy. 2 Jeśli argument sep nie jest określony lub jego wartość jest równa None, to stosowany jest inny algorytm podziału: sasiaduj ace białe znaki sa traktowane jako jeden separator, a wynik podziału nie będzie zawierać pustych ciagów 3 W konsekwencji, podział ciagu pustego lub ciag składajacego się tylko z białych znaków da w wyniku listę pusta. dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 16 / 17

>>> "".split(",") [ ] >>> "".split() [] >>> s = "Ala ma kota, który łowi \tmyszy" print(s) Ala ma kota, który łowi myszy >>> s.split() [ Ala, ma, kota,, który, łowi, myszy ] >>> s.split(",") [ Ala ma kota, który łowi \tmyszy ] >>> s.split("ma") [ Ala, kota, który łowi \tmyszy ] dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania w Pythonie 05.12.2012 17 / 17