Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałAneta Jóźwiak Został zmieniony 8 lat temu
1
Python
2
Języki Programistyczne Microcode Machine code Assembly Language (symboliczna reprezentacja machine code) Low-level Programming Language (FORTRAN, COBOL, BASIC, C) High-level Programming Language (Java, Python, Prolog, MATLAB)
3
Kompilacja (Compilation) Kompilator (Compiler) to program który konwertuje program napisany w języku na wyższym poziome do ekwiwalentnego programu na niższym poziomie Zalety: Kompiluj raz, wywołaj program wiele razy Kompilator może przyspieszyć działanie programu, nawet jak optymizacja może długi czas zając Wada: Debugowanie kodu wymaga dużego wsparcia narzędzi programistycznych
4
Interpretowany kod Kod który nie jest kompilowany jest interpretowany Python korzysta z stwarzania „byte-code” przed interpretacja (pliki.pyc) Zalety: Stwarza wrażenie że rzeczywiście komputer działa za pomocy języka na wysokim poziomie Lepszy debugging Łatwiej dodać kod w czasie działania programu Wada: Wolniejszy
5
Python Python jest dynamiczny zinterpretowany język programistyczny Nie ma deklaracji typów zmiennych, parametrów, funkcji lub metod w kodzie źródłowym W czasie działania programu typy wszystkich obiektów są ustalone przez interpretera
6
Python Interpreter >>> a = 6 >>> a 6 >>> a + 2 8 >>> a = 'hallo' 'hallo‚ >>> len(a) 5
7
Python Interpreter >>> a = 6 >>> a 6 >>> a + 2 8 >>> a = 'hallo' 'hallo' >>> len(a) 5 Uruchomić shella IPython
8
Kod Źródłowy Kod źródłowy Pythona używa rozszerzenie „.py” i te pliki są nazwane „modułami” (modules) Żeby uruchomić np. moduł Pythona ‚hallo.py’ można np. użyć komendę ‚python hallo.py Wojtek’ lub ‚run hallo.py Wojtek’ z shellu
9
Instrukcje warunkowe: if - else
10
Funkcje Za pomocy komendy „def” Wcięcie (Indentation) w Pythonie zmienia znaczenie kodu Logiczny blok kodu powinien zawsze mieć takie same wcięcie
11
Funkcje Za pomocy komendy „def” Wcięcie (Indentation) w Pythonie zmienia znaczenie kodu Logiczny blok kodu powinien zawsze mieć takie same wcięcie
12
Kod sprawdzony w czasie działania Kod poprawnie będzie działał w przypadku jak imię jest różne od Wojtek mimo tego ze kod źródłowy zawiera ewidentny błąd
13
Python Modules Wypisanie nazwy modułu i wciśnięcia klawisza TAB nam wyświetli wszystkie definicje modułu (wyrażenia zdefiniowane za pomocy komendy def)
14
Opis modułów i funkcji Opis modułów lub ich funkcji można uzyskać za pomocy help(), dir() lub ?
15
Python Strings Python posiada klasę „str” która ma wiele przydatnych narzędzi do obsługi stringów Stringi mogą być zaznaczane za pomocy ' lub ” Używanie odwrotnego ukośnika \ działa normalnie, np. \n,\\ stwarza nowa linijkę Stringi są niezmienne Polskie znaki: # -*- coding: utf-8 -*- (w nagłówku) Używać litery u przed ”
16
String splicing Odniesienie do pojedynczych liter realizuje się za pomocy nawiasów [] (pierwsza instancja to 0, np. str[1] jest ‚a’ w stringu ‚hallo’)
17
Zadania Napisz funkcje która biedzę brała liczbę jako input i oddaje string ‚Liczba ciasteczek jest: #’ w przypadku jak liczba jest mniejsza lub równa od 9 lub ‚za dużo ciasteczek’ jak liczba jest większa 9
18
Zadania Napisz funkcje która biedzę brała liczbę jako input i oddaje string ‚Liczba ciasteczek jest: #’ w przypadku jak liczba jest mniejsza lub równa od 9 lub ‚za dużo ciasteczek’ jak liczba jest większa 9 Napisz funkcje która okraja pierwsze dwa i ostatnie dwie litery dowolnego stringu
19
Zadania Napisz funkcje która biedzę brała liczbę jako input i oddaje string ‚Liczba ciasteczek jest: #’ w przypadku jak liczba jest mniejsza lub równa od 9 lub ‚za dużo ciasteczek’ jak liczba jest większa 9 Napisz funkcje która okraja pierwsze dwa i ostatnie dwie litery dowolnego stringu Napisz funkcje która zastępuje wszystkie litery które są identyczne z pierwsza litera dowolnego stringu o długości 1 lub więcej znakiem * ale nie zmienia pierwszą literę (np. armata arm*t*)
20
Zadania Napisz funkcje która biedzę brała liczbę jako input i oddaje string ‚Liczba ciasteczek jest: #’ w przypadku jak liczba jest mniejsza lub równa od 9 lub ‚za dużo ciasteczek’ jak liczba jest większa 9 Napisz funkcje która okraja pierwsze dwa i ostatnie dwie litery dowolnego stringu Napisz funkcje która zastępuje wszystkie litery które są identyczne z pierwsza litera dowolnego stringu o długości 1 lub więcej znakiem * ale nie zmienia pierwszą literę (np. armata arm*t*) Napisz funkcje która z dwóch stringów wprowadzonych wydaje dwie nowe stringi, gdzie pierwsze dwa litery są zamienione
21
Python Lists Listy są stwarzane za pomocą []
22
Python Lists Listy są stwarzane za pomocą [] Nie kopiuje listy!
23
Python Lists Listy są stwarzane za pomocą [] liczby a [1,2,3]
24
FOR i IN Pętle w pythonie się definiuję na przykład za pomocy komędy : for var in list
25
FOR i IN Pętle w pythonie się definiuję na przykład za pomocy komedy : for var in list
26
Slicing działa jak w przypadku stringow, np. liczby[1:] 2, 3
27
Sortowanie Za pomocy funkcji sorted()
28
Sortowanie za pomocy funkcji (key=)
29
‚a’‚bbbb’‚cc’‚ddd’
30
Sortowanie za pomocy funkcji (key=) ‚a’‚bbbb’‚cc’‚ddd’ 1423
31
Sortowanie za pomocy funkcji (key=) ‚a’‚bbbb’‚cc’‚ddd’ 1111 4242 2323 3434 ‚a’‚cc’‚ddd’‚bbbb’ sortowanie
32
Sortowanie za pomocy sort()
34
Tuples (Krotki) Krotka to grupowanie elementów o ustalonej wielkości (n.p. punkt w 2 wymiarowej przestrzeni) Krotka jest niemutowalna i nie zmienia wielkości z porównaniu do list Żeby stworzyć krotke to należy użyć nawiasów ()
35
Tuples vs. Lists
36
Zadania Na danej liście stringów napisz funkcje która liczy ile stringów w liście maja długość większa od 2 i pierwsza litera jest taka sama jak ostatnia
37
Zadania Na danej liście stringów napisz funkcje która liczy ile stringów w liście maja długość większa od 2 i pierwsza litera jest taka sama jak ostatnia Na danej liście stringów napisz funkcje która zwraca sortowana listę ale podaje najpierw wszystkie stringi które rozpoczynają się z litera x (zdefiniuj dwie listy w funkcji żeby rozwiązać zadanie)
38
Zadania Na danej liście stringów napisz funkcje która liczy ile stringów w liście maja długość większa od 2 i pierwsza litera jest taka sama jak ostatnia Na danej liście stringów napisz funkcje która zwraca sortowaną listę ale podaje najpierw wszystkie stringi które rozpoczynają się z litera x (zdefiniuj dwie listy w funkcji żeby rozwiązać zadanie) Na danej liście krotek zwróć sortowaną listę według ostatniego elementu każdego krotka (np. [(2,7),(1,2),(1,3)] [(1,2),(1,3),(2,7)])
39
Zadania Na danej liście stringów napisz funkcje która liczy ile stringów w liście maja długość większa od 2 i pierwsza litera jest taka sama jak ostatnia Na danej liście stringów napisz funkcje która zwraca sortowaną listę ale podaje najpierw wszystkie stringi które rozpoczynają się z litera x (zdefiniuj dwie listy w funkcji żeby rozwiązać zadanie) Na danej liście krotek zwróć sortowaną listę według ostatniego elementu każdego krotka (np. [(2,7),(1,2),(1,3)] [(1,2),(1,3),(2,7)]) Na danej liście liczb, zwróć listę liczb gdzie wszystkie sąsiednie liczby o tej samej wartości są do jednej liczby zredukowane (np. [1,2,2,3] [1,2,3])
40
Słownik (Dict) Definiuję się słownik za pomocy nawiasów {}
41
Słownik (Dict) Keys (klucze)Values (wartości) ‚r’‚raz’ ‚d’‚dwa’ ‚t’‚trzy’ dict
42
Słownik (Dict) Keys (klucze)Values (wartości) ‚r’‚raz’ ‚d’‚dwa’ ‚t’‚trzy’ dict
44
Del Operator ‚del’ wdraża usuwania
45
Pliki
46
Plik składa się z wierszow (line) – za pomocy funkcji split() można stworzyć liste słów
47
Zadania Napisz program który otwiera plik posiadający dwie kolumny słów i zapisuje zawartość jako słownik, gdzie zawartość pierwszej kolumny jest kluczem a zawartość drugiej kolumny jest wartością słownika (lista znajduje się: https://wp.faculty.wmi.amu.edu.pl/lista.txt )
48
Zadania Napisz program który otwiera plik posiadający dwie kolumny słów i zapisuje zawartość jako słownik, gdzie zawartość pierwszej kolumny jest kluczem a zawartość drugiej kolumny jest wartością słownika (lista znajduje się: https://wp.faculty.wmi.amu.edu.pl/lista.txt ) Napisz program który liczy ile słów jest w danym pliku i wyświetla dla każdego słowa ile razy ono się pojawia w pliku
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.