• Nie Znaleziono Wyników

Programowanie proceduralne

N/A
N/A
Protected

Academic year: 2021

Share "Programowanie proceduralne"

Copied!
64
0
0

Pełen tekst

(1)

Programowanie proceduralne

INP001210WL

rok akademicki 2019/20 semestr letni

Wykład 3

Karol Tarnowski

karol.tarnowski@pwr.edu.pl

L-1 p. 220

(2)

• Wprowadzenie do list

• Operator powtórzenia

• Listy i pętla for

• Indeksowanie elementów

• Długość listy

• Modyfikowanie list

• Konkatenacja list

• Wycinek listy

Plan prezentacji (1)

T. Gaddis, Python dla zupełnie początkujących, Helion, 2019

(3)

• Wyszukiwanie elementu listy

• Wybrane metody listy

• Kopiowanie listy

• Przetwarzanie danych

• Listy i pliki

• Listy zagnieżdżone

• Krotki

Plan prezentacji (2)

T. Gaddis, Python dla zupełnie początkujących, Helion, 2019

(4)

• Lista to obiekt zawierający wiele elementów danych.

• Lista jest modyfikowalna – jej zawartość może być zmieniona w trakcie działania programu.

Wprowadzenie do list

(5)

• Przykład polecenia tworzącego listę:

parzyste = [2, 4, 6, 8, 10]

• Listę można wyświetlić funkcją print() print(parzyste)

Wprowadzenie do list

(6)

• Lista może zawierać ciągi tekstowe:

kursy = ['Algebra', 'Analiza', 'Fizyka']

Wprowadzenie do list

(7)

• Lista może zawierać elementy o różnych typach danych:

zawodnik = ['Bartosz Zmarzlik',78,2.410]

Wprowadzenie do list

(8)

• Istnieje wbudowana funkcja list()

przeznaczona do konwertowania różnych typów obiektów na postać listy

liczby = list(range(5))

Wprowadzenie do list

(9)

• Operator * zastosowany do listy i liczby całkowitej nazywany jest operatorem powtórzenia

• Operator powtórzenia powoduje utworzenie listy zawierającej wiele powtórzonych kopii

lista * n

Operator powtórzenia

(10)

• Wykorzystując pętle for można prowadzić iterację przez listę

Listy i pętla for

(11)

• Taka lista może zawierać elementy różnych typów

Listy i pętla for

(12)

• Dostęp do poszczególnych elementów listy można uzyskać używając indeksów

Indeksowanie

(13)

• Użycie nieprawidłowego indeksu elementu powoduje zgłoszenie wyjątku

Indeksowanie

(14)

• Indeksy ujemne pozwalają na wskazywanie pozycji na liście od końca

Indeksowanie

(15)

• Do sprawdzenia długości listy można wykorzystać funkcję len()

Długość listy

(16)

• Wykorzystując funkcję len() można przejść przez listę pętlą while

Długość listy

(17)

• Wartość elementów listy może być zmieniana lista[index] = nowa_wartosc

Lista jest modyfikowalna

(18)

• Takie przypisanie działa tylko dla pozycji, które już są na liście

Lista jest modyfikowalna

(19)

Lista jest modyfikowalna

(20)

Lista jest modyfikowalna

(21)

• Do połączenia (konkatencji) list używa się operatora +

Konkatencja list

(22)

• Do połączenie list można użyć złożonego operatora przypisania +=

Konkatencja list

(23)

• Z wykorzystaniem indeksu można uzyskać dostęp do pojedynczego elementu listy

• Python pozwala także tworzyć wycinek obejmujący pewien fragment listy

nazwa_listy[początek:koniec]

Wycinek listy

(24)

• Przykładowo:

Wycinek listy

(25)

• Pominięcie jednego z indeksów (początku lub końca) pozwala stworzyć wycinek listy od

początku lub do końca:

Wycinek listy

(26)

• Pominięcie obu indeksów pozwala stworzyć kopię całej listy:

Wycinek listy

(27)

• Wycinek może zawierać również elementy listy z podanym krokiem:

Wycinek listy

(28)

• Do wskazywania elementów wycinka można używać również ujemnych indeksów

Wycinek listy

(29)

• Nieprawidłowy indeks nie spowoduje błędu:

Wycinek listy

(30)

• Operator in pozwala sprawdzić, czy element znajduje się na liście

• Wywołanie:

element in lista

Wyszukiwanie elementu listy

(31)

Wyszukiwanie elementu listy

(32)

metoda opis

append(element) dołącza element na końcu listy index(element) zwraca najniższy indeks, którego

wartość odpowiada elementowi

sort() porządkowanie elementów

w kolejności rosnącej

insert(indeks, element) wstawienie elementu na pozycji indeks

remove(element) usuwa element z listy

reverse() odwraca kolejność elementów na liście

Wybrane metody listy

(33)

Wybrane metody listy

append()

(34)

Wybrane metody listy

append()

(35)

Wybrane metody listy

append()

(36)

Wybrane metody listy

append()

(37)

Wybrane metody listy

index()

(38)

Wybrane metody listy

index()

(39)

Wybrane metody listy

sort()

(40)

Wybrane metody listy

sort()

(41)

Wybrane metody listy

insert()

(42)

Wybrane metody listy

insert()

• Użycie indeksu przekraczającego długość listy nie spowoduje błędu

• Element zostanie wstawiony na koniec lub

początek listy

(43)

Wybrane metody listy

remove()

• Metoda remove() usuwa z listy pierwsze

wystąpienie elementu

(44)

Wybrane metody listy

reverse()

• Metoda reverse() odwraca porządek

elementów na liście

(45)

Usuwanie elementu listy

del

• Do usunięcia elementu listy można użyć

polecenia del

(46)

Znajdowanie minimum i maksimum

• Funkcje min() i max() zwracają wartość

minimalnego i maksymalnego elementu z listy

(47)

• Przypisanie jednej zmiennej do drugiej powoduje odwoływanie się obu zmiennych do tego samego obszaru pamięci

Kopiowanie listy

(48)

• Przypisanie jednej zmiennej do drugiej powoduje odwoływanie się obu zmiennych do tego samego obszaru pamięci

Kopiowanie listy

a b c d

list1

(49)

• Przypisanie jednej zmiennej do drugiej powoduje odwoływanie się obu zmiennych do tego samego obszaru pamięci

Kopiowanie listy

a b c d list1

list2

(50)

• Obie zmienne wskazują na ten sam obszar

pamięci. Zatem zmiana wartości elementu jest widoczna przez obie zmienne.

Kopiowanie listy

a z c d list1

list2

(51)

• Do kopiowania listy można wykorzystać metodę copy()

Kopiowanie listy

(52)

Przetwarzanie elementów listy

(53)

Przetwarzanie elementów listy

(54)

Przetwarzanie elementów listy

(55)

Przetwarzanie elementów listy

(56)

Przetwarzanie elementów listy

(57)

Listy i pliki

(58)

Listy i pliki

(59)

Listy zagnieżdżone

(60)

• Krotka to niemodyfikowalna sekwencja

• Do zapisania krotki używa się nawiasów okrągych

Krotka

(61)

• Krotka pozwala na odwoływanie się do elementów przez index

• Krotka może być argumentem funkcji len(), min(), max()

• Można tworzyć wycinki z krotki

• Krotka działa z operatorami in, +, *

Krotka

(62)

• Funkcje list() i tuple() pozwalają

przeprowadzić konwersję między krotką i listą

Krotka

(63)

• Operator powtórzenia *

• Listy i pętla for

• Indeksowanie elementów []

• Długość listy len()

• Modyfikowanie list

• Konkatenacja list +

• Wycinek listy [a:b]

Podsumowanie (1)

(64)

• Wyszukiwanie elementu listy in

• Wybrane metody listy

• Kopiowanie listy copy()

• Przetwarzanie danych

• Listy i pliki

• Listy zagnieżdżone

[[1,2,3],[4,5,6],[7,8,9]]

• Krotki tuple() (1,2,3)

Podsumowanie (2)

Cytaty

Powiązane dokumenty

• Funkcje wywołuje się pisząc jej nazwę oraz nawiasy klamrowe z argumentami przekazywanymi do funkcji.

• Podstawowym sposobem przekazywania zmiennych do funkcji jest przekazywanie przez wartość – funkcja nie zmieni.

Jeśli element wskazywany przez indeks jest większy od maksimum, to przypisz maksimum wartość elementu wskazywanego przez indeks 5.. • Przypisz maksimum_indeks

• Dostęp do struktur wskazywanych przez wskaźnik uzyskuje się operatorem ->.

• Polem struktury może być wskaźnik na taką strukturę – tego typu struktury. nazywamy

• Jeżeli nie można otworzyć pliku funkcja fopen() zwraca wskaźnik zerowy NULL.. • Jeżeli operacja zamknięcia pliku się nie powiedzie funkcja fclose()

• Po uruchamieniu programu w trybie debugowania mamy możliwość włamania się do niego. • Menu Debug >>

rok akademicki 2018/19 semestr letni.