# coding: utf-8 # # Ogólne wprowadzenie do Pythona # #   # # ## 19 Listopada 2017 # ## Hello Python! # In[ ]: print('Hello Python') # In[ ]: print('Hello Python') print(10) print(3.14) print(123456789 * 987654321) print(10 ** 20) print(12 ** (3 + 4 * (567 % 8) / 9)) print("PI", "jest równe ", 3.1415) # ## Komentarze # * Komentarze nie są interpretowane. # * Komentarze w Pythonie zaczynają się od znaku '#' # * Istnieją komentarze wielolinijkowe tagowane potrójnym ", czyli """ """ # # In[ ]: print("Bardzo ważna wiadomość") # A to jest komentarz """ Komentarz wielo- linijkowy """ # print("Nie chcę być wydrukowanym") print("A teraz chcę") # ## Zmienne # * case sensitive, # * brak deklaracji typu, # * do zmiennej można pezypisać wszystko. # In[ ]: zmienna = "Zmienna" zmienna = 10 ** 44 ocena_z_pythona = 5 pi = 3.1415 imie_prowadzacego = 'Tomek' nazwisko_prowadzego = "Dwojak" czy_lubie_pythona = True # False nic = None # In[ ]: lucky_number = 7 lucky_number +=8 lucky_number = lucky_number / 3 print(lucky_number) # In[ ]: print(type(ocena_z_pythona)) print(type(pi)) print(type(imie_prowadzacego)) print(type(nazwisko_prowadzego)) print(type(czy_lubie_pythona)) # ## Listy # * W Pythonie nie ma tablic, są listy; # * Listy mogą przechowywać elementy różnych typów; # * Indeksowanie zaczyna się od 0. # In[ ]: pusta_lista = [] # albo równoważnie pusta_lista = list() oceny = [5, 4, 3, 5, 5] roznosci = [3.14, "pi", ["pi"], 3] ciag_10_elem = range(10) print("ciąg:", ciag_10_elem) print("rożności:", roznosci) # ## Dodawanie i usuwanie elementów z listy # In[ ]: oceny.append(4) # Dodanie elementu na koniec print(oceny) # In[ ]: oceny.extend([4,4,4]) # Rozszerzenie o inną listę print(oceny) # In[ ]: oceny.pop(4) # Domyślnie usuwa ostatni element z listy print(oceny) # ## Indeksowanie # In[ ]: print(oceny) print('pierwszy element:', oceny[0]) print('ostatni element:', oceny[-1]) print('5 pierwszych:', oceny[:5]) print('5 ostatnich', oceny[-5:]) print('od drugiego, do piątego', oceny[1:5]) print('parzyste:', oceny[::2]) print('od tyłu', oceny[::-1]) # ## Co możemy zrobić z listą? # In[ ]: oceny.sort() print(oceny) oceny.reverse() print("liczba piątek", oceny.count(5)) # ## Pętla typu ```for``` # * W Pythonie pętla *for* działa jak pętla *for each* w innych językach; # * W Pythonie nie ma klamr, ani *begin* i *end*; jako ciało pętli musi być wcięte (najcześciej 4 spacje). # In[1]: for i in range(5):# range[5] = [0,1,2,3,4] print('element:', i) # Uwaga wcięcie! print('sqr:', i **2) # Uwaga wcięcie! # Schemat: # In[ ]: for zmienna in lista: # operacje do wykonania w pętli # In[ ]: for ocena in oceny: print("Ocena:", ocena) # ## Lista kwadratów # In[ ]: kwadraty = [] for i in range(10): kwadraty.append(i ** 2) print(kwadraty) print(kwadraty[5]) # ## Słowniki, czyli mapy # In[ ]: slownik = {} s_oceny = {"Justyna" : [5,5,5], "Bartek" : [3,4,5], "Ola": [3,3,3]} print(s_oceny) s_oceny[1234567890] = [3,4,5] #print("ADAM:", s_oceny["Adam"]) print(s_oceny) # In[ ]: s_oceny['Ala'] = [2,2,2,4,4,4,3,3,3] print(s_oceny) # ## Iterowanie po słowniku # In[ ]: for osoba in s_oceny: print(osoba,':', s_oceny[osoba]) # In[ ]: for osoba, oceny in s_oceny.items(): print(osoba,':', oceny) # ## Instrukcja sterująca ```if ... else``` # * działa tak samo, jak w innych języka; # * jest dodatkowa instrukcja następnego warunku *elif...*; # In[ ]: zmienna = 7 if zmienna < 0: print("Ujemna!") elif zmienna == 0: print("Zero!") # In[ ]: if "Ala" in s_oceny: print("Ala jest w grupie!") else: print("Niestety Ali nie ma grupie!") # ## Funkcje # In[ ]: def is_greater_than_5(x): if x > 5: return True else: return False # In[ ]: print(is_greater_than_5(5)) print(is_greater_than_5(-100)) print(is_greater_than_5(500)) # # Łańcuchy znakowe # In[ ]: napis = "Wiadomość" print(napis) # In[ ]: for znak in napis: print(znak, ord(znak)) # In[ ]: if 'dom' in napis: print(True) else: print(False) # In[ ]: slowa = ['Bardzo' , 'ważna', 'wiadomość'] print(' '.join(slowa)) # In[ ]: text = "Bardzo ważna wiadomość" print(text.split(' ')) # In[ ]: text = "Nie wszyscy lubią spacje na końcu linii. " print(text) print(text.strip(' ')) # # Pytania?