Modelowanie procesów fizycznych w reaktorach jadrowych
|
|
- Patrycja Michalik
- 8 lat temu
- Przeglądów:
Transkrypt
1 Modelowanie procesów fizycznych w reaktorach jadrowych Krzysztof Miernik Zakład Fizyki Jadrowej Wydział Fizyki Uniwersytet Warszawski 1
2 Wykład 2: Wprowadzenie do Pythona 2
3 Język Python Stworzony w 1991 przez Guido van Rossuma Nazwa pochodzi od Monty Python Flying Circus Jest językiem wysokiego poziomu ogólnego przeznaczenia Jednym z naczelnych założeń projektowych jest czytelność kodu Umożliwia programowanie proceduralne, obiektowe i funkcyjne Typowanie dynamiczne i słabe Automatyczne zarzadzanie pamięcia Bardzo bogata biblioteka standardowa (batteries included) Nieprawdopodobnie bogate biblioteki dodatkowe (i sa łatwe do instalowania) Dlaczego Python? 3
4 Python, a inne języki Dlaczego Python? 4
5 Dlaczego Python? Google Trends popularno zapyta wzgl dem kategorii Programowanie Python C++ Fortran Dlaczego Python? 5
6 Dlaczego Python? Nature 518, 7537 (2015) Dlaczego Python? 6
7 Wprowadzenie do Pythona Python jako kalkulator liczby, ciagi znaków, listy instrukcje while, if, for skrypty, moduły listy, krotki, słowniki metody wejścia/wyjścia programowanie obiektowe biblioteka standardowa inne biblioteki Podstawy Pythona 7
8 Python jako kalkulator Duża część przykładów pochodzi z oficjalnego wprowadzenia do Pythona Obliczenia w interpreterze >>> >>> 12 * >>> 12 * ( ) >>> 17 / 3 >>> 17 // 3 >>> 17 % 3 >>> 2**3 >>> 2**(1/2) >>> -3**2 >>> (-3)**2 >>> width = 20 >>> height = >>> width * height >>> _ / 10**2 Podstawy Pythona 8
9 Łańcuchy znaków (1) Definiowanie łańcucha, polecenie print >>> spam eggs >>> doesn\ t >>> "doesn t" >>> "Yes", he said. >>> "\"Yes\", he said." >>> First line.\nsecond line. >>> s = First line.\nsecond line. >>> print(s) >>> print( C:\some\name ) >>> print(r C:\some\name ) >>> print("""\ Ala ma kota """) >>> 3 * un + ium Podstawowe struktury danych 9
10 Łańcuchy znaków (2) Podzbiory łańcucha, operacje >>> prefix = Py >>> glued = prefix + thon >>> glued[0] >>> glued[5] >>> glued[-1] >>> glued[-2] >>> glued[0:2] >>> glued[-2:] >>> glued[:2] >>> glued[:2] + glued[2:] >>> glued[0] = C >>> C + glued[1:] >>> len(glued) Podstawowe struktury danych 10
11 Łańcuchy znaków (3) Formatowanie łańcucha >>> print( {}.format( string )) >>> print( {} ma {}.format( ala, kota )) >>> s = "{0} {1} {2}" >>> s = s.format( Ala, ma, kota ) >>> print(s) >>> s = "{kto} {co} {kogo}" >>> s = s.format(kto= Ala, co= ma, kogo= kota ) >>> print(s) >>> pi = >>> print(pi) >>> print( {:.3f}.format(pi)) >>> print( {:.3e}.format(pi)) >>> print( {: 8.3f}.format(pi)) >>> print( {:#^8.1f}.format(pi)) >>> print( {:*>8.1f}.format(pi)) >>> print( {:$<8.1f}.format(pi)) Podstawowe struktury danych 11
12 Listy Definiowanie, podstawowe operacje >>> squares = [1, 4, 9, 16, 25] >>> squares >>> squares[2] >>> squares[-1] >>> squares[0:2] >>> squares + [35, 49, 64, 81, 100] >>> squares = squares + [35, 49, 64, 81, 100] >>> squares >>> squares[5] = 36 >>> squares >>> len(squares) >>> letters = [ a, b, c ] >>> mix = squares + letters >>> mix >>> mix = [squares, letters] >>> mix >>> mix[0][3] >>> mix[1][2] Podstawowe struktury danych 12
13 Skrypty Program można zapisać w postaci skryptu w pliku tekstowym z rozszerzeniem *.py. Np. test.py squares = [1, 4, 9, 16, 25] print(squares) squares = squares + [35, 49, 64, 81, 100] print(squares) squares[5] = 36 print(squares) Skrypt można uruchomić poleceniem $ python test.py Kolejne przykłady będa wykorzystywały tę metodę zamiast interaktywnej powłoki Pythona. Skrypty 13
14 Instrukcja while Uwaga - w języku Python wcięcia definuja bloki kodu. Należy używać albo spacji, albo tabulatorów, ale nie wolno ich mieszać! a = 0 while a < 5: print(a) a += 1 a, b = 0, 1 while b < 10: print(b) a, b = b, a+b a, b = 0, 1 while b < 100: print(b, end=, ) a, b = b, a+b Instrukcje kontrolne 14
15 Instrukcja if x = 3 if x < 0: x = 0 print( Negative changed to zero ) elif x == 0: print( Zero ) elif x == 1: print( One ) else: print( More ) Instrukcje kontrolne 15
16 Pętla for (1) Pętla for porusza się po liście lub innej sekwencji z iteratorem cats = [ natasza, marusia, bolek, lolek ] for c in cats: print(c) Jeżeli chcemy dostać ciag arytmetyczny możemy użyć funkcji range for i in range(5): print(i) for i in range(5, 10): print(i) for i in range(0, 10, 3): print(i) for i in range(10, -5, -2): print(i) Ponieważ długość listy zwraca funkcja len, łatwo jest wygenerować ciag arytmetyczny odpowiadajacy danej liście elementów for i in range(len(cats)): print(i, cats[i]) Instrukcje kontrolne 16
17 Pętla for (2) W rzeczywistości range nie generuje listy, tylko iterator print(range(5)) print(list(range(5))) W pętli for możemy stosować polecenia break i continue. for num in range(2, 10): if num % 2 == 0: print("found an even number", num) continue print("found a number", num) Polecenie else jest wykonywane tylko jeżeli pętla nie zostanie przerwana przez break. for n in range(2, 20): for x in range(2, n): if n % x == 0: print(n, equals, x, *, n//x) break else: print(n, is a prime number ) Instrukcje kontrolne 17
18 Pętla while Polecenia continue, break, else można stosować w analogiczny sposób także w pętli while. x = 10 n = 7 while x > 0: if x % n == 0: print(x, is divisible by, n) break x -= 1 else: print( while - else ) Polecenie pass wykonuje pusta instrukcję i może być użyte w miejscach wymaganych przez składnię (np. jako puste miejse do wypełnienia w przyszłości. print( Press ctrl+c ) while True: pass Instrukcje kontrolne 18
19 Listy i ich metody (1) append, extend, insert, remove, pop, index, count, sort, reverse l = [3, 5, 1] print( list, l) l.append(9) print( append, l) l.extend([7, 13]) print( extend, l) l.insert(5, 11) print( insert, l) l.remove(1) print( remove, l) print(l.pop()) print( pop(), l) print(l.pop(2)) print( pop(2), l) print( 5 at position, l.index(5)) print( 11 appears, l.count(11), times ) l.sort(reverse=true) print( sort, reverse, l) l.reverse() print( reversed, l) Struktury danych 19
20 Listy i ich metody (2) copy, clear, del m = l.copy() print( copy, l, m) l.clear() print( clear, l, m) del nie zwraca wartości i usuwa element (lub zmienna) del m[0] print( del, m) del m[0:2] print( del, m) del m #print( del, m) Struktury danych 20
21 Kopiowanie list l = [1, 2, 3] m = l l[0] = 4 print(l, m) m jest tylko referencja do listy. Aby mieć dwie niezależne listy, musimy zrobić kopię. m = l.copy() l[0] = 1 print(l, m) l = [[0], [0], [0]] print(l) m = l.copy() l[0].append(1) print( l =, l, ; m =, m) Ta kopia jest tzw. kopia płytka i nie działa w przypadku zagnieżdżonych struktur. Trzeba użyć kopii głębokiej (o słowie import będzie później). import copy n = copy.deepcopy(l) l[1].append(1) print( l =, l, ; m =, m, ; n =, n) Struktury danych 21
22 Listy składane squares = [] for i in range(1, 10): squares.append(i**2) print(squares) To samo tylko szybciej (comprehension list) squares = [i**2 for i in range(1, 10)] print(squares) pairs = [(x, y) for x in range(1, 5) for y in range(1, 5) if x < y] print(pairs) pairs = [[(x, y) for x in range(1, z) for y in range(1, z) if x < y] for z in range(3, 6)] for i, p in enumerate(pairs): print(i, p) Struktury danych 22
23 Krotki i zbiory Krotki (tuple) sa podobne do list, ale sa niezmienne t = 1, 2, 3 r = (1, 2, 3) print(t, r) #t[0] = 0 #r[0] = 0 Zbiory (sets) sa jak zbiory matematyczne (nie może być duplikatów) s = {0, 0, 1, 1, 2, 3} print(s) Operator in odpowiada na pytanie o należność do zbioru (także listy, krotki, itd.) print(0 in s) print( Is in the set ) if 4 in s else print( Not in the set ) Struktury danych 23
24 Słowniki Słownik (dict) zawiera pary klucz - wartość (klucz musi być unikatowy) d = { Marek : 2.64, Krzysiek : 2.65, Agnieszka : 2.66 } print(d) print(d[ Marek ]) for k, v in d.items(): print(k, v) Klucz musi być niezmienny, więc np. tworzac mapę nuklidów (A, Z) musimy użyć tupli, a nie list jako kluczy. elements = {0 : n, 1 : H, 2 : He, 3 : Li, 4 : Be, 5 : B, 6 : C } nuclides = {} for z in range(len(elements)): for a in range(z, 3 * z): nuclides[(a, z)] = {}{}.format(a, elements[z]) print(nuclides) print( sort by key ) for n in sorted(nuclides.items()): print(n) Struktury danych 24
25 Funkcje (1) Funkcje tworzy się za pomoca składni def pitagoras(a, b): return (a**2 + b**2)**(1/2) a woła poprzez pitagoras(3, 4) Parametry moga mieć nadane domyślne wartości def arguments(x, x_max=1, dx=0.1): while x < x_max: print(x, x**(1/2)) x += dx wywołanie może mieć wtedy następujace postaci arguments(0.0) arguments(0.0, 2.0) arguments(0.0, dx=0.05) Funkcje 25
26 Funkcje (2) Odzyskiwanie parametrów w postaci listy i słownika def foo(i, j=1, *arguments, **keywords): print( i =, i) print( j =, j) print( arguments ) for arg in arguments: print(arg) print( keys ) for key in keywords.keys(): print(key) print( values ) for value in keywords.values(): print(value) print( items ) for item in keywords.items(): print(item) print( keys and values ) for key, value in keywords.items(): print(key, value) foo(0, 1, 2, 3, a=4, b=5, c=6) Funkcje 26
27 Funkcje (3) Parametr domyślny jest wyznaczany tylko raz i w miejscu deklaracji, co ma konsekwencje w pewnych przypadkach x = 5 def f1(arg=x): print(x) x = 6 f1() def f2(a, l=[]): l.append(a) return l print(f2(0)) print(f2(1)) Funkcje 27
28 Funkcja anonimowa Funkcja anonimowa (lambda) cubic = lambda x: x**3 print(cubic(2)) W szczególności można ich użyć przy sortowaniu list czy słowników for n in sorted(nuclides.items(), key=lambda x: x[0][1] ): print(n) Funkcje 28
29 Dokumentacja Funkcje (a także inne elementy) powinno się opisywać łańcuchem dokumentacyjnym (docstring). Python automatycznie obsługuje tak tworzona dokumentację. def foo(x): """Podnosi parametr x do kwadratu Bardzo prosta funkcja (bez sensu) """ return x**2 print(foo. doc ) Dokumentacja 29
30 Moduły Moduł to plik z rozszerzeniem *.py zawierajacy funkcje (i klasy), który można importować i używać w innym module. Plik nuclear_masses.py """ This module contains various methods of calculating nuclear masses. """ def LDM(A, Z, params=standard_params): """Liquid Drop Model""" pass def experimental_mass(a, Z, database= AME2013.dat ): pass if name == main : pass Jeżeli wywołamy powyższy plik jako skrypt, to wykonaja się polecenia obwarowane instrukcja if. Jeżeli natomiast zaimportujemy do innego skryptu, to ta część zostanie pominięta. Moduły i pakiety 30
31 Moduły Importowanie modułu import nuclear_masses nuclear_masses.ldm(10, 20) Importowanie wybranych funkcji from nuclear_masses import LDM LDM(10, 20) lub wszystkich (zwykle nie używane) from nuclear_masses import * LDM(10, 20) Moduły i pakiety 31
32 Pakiety Pakiety to moduły, które zawieraja inne moduły (w formie hierarchicznego drzewa) Taki pakiet to np. biblioteka matplotlib służaca do tworzenia wykresów. Zwykle importowany jest tylko moduł pyplot zawierajacy API użytkownika, ale czasem przydaja się inne elementy, np. moduł pozwalajacy na tworzenie animacji animation. import matplotlib.pyplot import matplotlib.animation matplotlib.pyplot.plot(x, y, - ) matplotlib.animation.funcanimation() Wygodnie jest zamiast długiej nazwy zaimportować moduł pod skrócona (dowolna) nazwa import matplotlib.pyplot as plt import matplotlib.animation as movie plt.plot(x, y, - ) movie.funcanimation() Moduły i pakiety 32
33 Pliki Funkcja open zwraca obiekt powiazany z plikiem, w zależności od trybu otwarcia może być on do odczytu (r), pisania (w, istniejacy plik zostaje skasowany), dopisywania (a), odczytu i zapisu (r+). Dodanie litery b do trybu oznacza tryb binarny, w innym przypadku jest to tryb tekstowy. data_file = open( data.txt, r) Funkcja read służy do czytania danych, read() wczyta cały plik, read(size) wczyta size bajtów. data_file.read(10) Funkcja readline wczytuje jedna linię tekstu (łacznie ze znakiem końca linii). data_file.readline() for line in data_file: print(line, end= ) write służy do pisania w pliku, natomiast seek i tell odpowiednio przesuwaja i zwracaja położenie bieżacej pozycji w pliku. data_file.write( {} {} {} \n.format(0, 0, 1) data_file.seek(10) data_file.tell() Operacje I/O 33
34 Błędy Prosty program w C++, z drobnym błędem #include <iostream> #include <vector> int main() { std::vector<int> v; if (v > 0) v.pop_back(); } i wynik kompilacji (149 linii) /usr/include/c++/6.3.1/bits/stl_iterator.h:906:5: note: template argument deduction/substitution failed: a.cpp:7:13: note: std::vector<int> is not derived from const gnu_cxx:: normal_iterator<_iterator, _Container> if (v > 0) ^ In file included from /usr/include/c++/6.3.1/bits/stl_algobase.h :67:0, from /usr/include/c++/6.3.1/bits/char_traits.h :39, from /usr/include/c++/6.3.1/ios:40, from /usr/include/c++/6.3.1/ostream:38, from /usr/include/c++/6.3.1/iostream:39, Wyjatki 34
35 Błędy w Pythonie Podobny program l = [0, 1, 2] if l > 0: l.pop() i próba uruchomienia Traceback (most recent call last): File "test.py", line 2, in <module> if l > 0: TypeError: > not supported between instances of list and int Wszelkie błędy sa zwracane w postaci wyjatków (Exception), należacych do odpowiednich klas. Powyżej mamy bład typu (TypeError). Program wcale nie musi przerywać działania w takiej sytuacji, możliwa jest odpowiednia obsługa wyjatku. data_file = open( data.txt ) counter = 0 for line in data_file: try: counter += int(line) except TypeError: pass Wyjatki 35
36 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Programowanie obiektowe 36
37 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Programowanie obiektowe 36
38 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Programowanie obiektowe 36
39 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Programowanie obiektowe 36
40 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Każdy obiekt ma swoje zmienne i procedury. Programowanie obiektowe 36
41 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Każdy obiekt ma swoje zmienne i procedury. Obiekty można ponownie używać w innych programach. Programowanie obiektowe 36
42 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Każdy obiekt ma swoje zmienne i procedury. Obiekty można ponownie używać w innych programach. Wewnętrzna strukturę obiektów można modyfikować, uzupełniać i poprawiać, o ile nie wpływa to na widziane z zewnatrz własności. Programowanie obiektowe 36
43 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Każdy obiekt ma swoje zmienne i procedury. Obiekty można ponownie używać w innych programach. Wewnętrzna strukturę obiektów można modyfikować, uzupełniać i poprawiać, o ile nie wpływa to na widziane z zewnatrz własności. Obiekty moga dziedziczyć (łaczyć się hierachicznie) po bardziej ogólnych klasach (np. samochód, czy rower jest bardziej szczegółowa realizacja klasy pojazd). Programowanie obiektowe 36
44 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Każdy obiekt ma swoje zmienne i procedury. Obiekty można ponownie używać w innych programach. Wewnętrzna strukturę obiektów można modyfikować, uzupełniać i poprawiać, o ile nie wpływa to na widziane z zewnatrz własności. Obiekty moga dziedziczyć (łaczyć się hierachicznie) po bardziej ogólnych klasach (np. samochód, czy rower jest bardziej szczegółowa realizacja klasy pojazd). Obiekty moga zawierać inne obiekty (np. samochód zawiera koła, czujnik prędkości itd.). Programowanie obiektowe 36
45 Programowanie obiektowe Podejście obiektowe jest próba opisu skomplikowanych systemów za pomoca abstrakcji. Tworzymy obiekty, z którymi się komunikujemy (i które moga się komunikować między soba), które realizuja zadania dzięki wewnętrznym metodom. Problem dzielimy na pewne zadania, które przypisujemy obiektom i w pewnym sensie nie interesuje nas jak dany obiekt rozwiaże zadanie, o ile robi to zgodnie z oczekiwaniami. Niepotrzebne informacje sa ukryte wewnatrz obiektu. Każdy obiekt należy do pewnej klasy. Każdy obiekt ma swoje zmienne i procedury. Obiekty można ponownie używać w innych programach. Wewnętrzna strukturę obiektów można modyfikować, uzupełniać i poprawiać, o ile nie wpływa to na widziane z zewnatrz własności. Obiekty moga dziedziczyć (łaczyć się hierachicznie) po bardziej ogólnych klasach (np. samochód, czy rower jest bardziej szczegółowa realizacja klasy pojazd). Obiekty moga zawierać inne obiekty (np. samochód zawiera koła, czujnik prędkości itd.). W Pythonie wszyscy członkowie klasy sa publiczni, a wszystkie funkcje sa wirtualne (według terminologii C++). Programowanie obiektowe 36
46 Klasy import math class Point: def init (self, x, y): self.x = x self.y = y def distance(self, point): return math.sqrt((self.x - point.x)**2 + (self.y - point.y)**2) class Circle: def init (self, x, y, r): self.center = Point(x, y) self.r = r def distance_to_perimeter(self, point): return math.sqrt((self.center.x - point.x)**2 + (self.center.y - point.y)**2) - self.r p1 = Point(0, 0) p2 = Point(1, 2) c1 = Circle(1, 1, 1) print(p1.distance(p2)) print(c1.distance_to_perimeter(p2)) print(p1.distance(c1.center)) Programowanie obiektowe 37
47 Wyjatki - jeszcze raz Nowe wyjatki można tworzyć korzystajac z mechanizmu dziedziczenia. Wszystkie wyjatki dziedzicza po bazowej klasie Exception. class NuclearError(Exception): def init (self, msg = ): self.msg = msg def str (self): return self.msg try: if temp > temp_max: raise NuclearError( Max temp reached ) except NuclearError as err: print(err) Programowanie obiektowe 38
48 Krótki przeglad bibloteki standardowej (1) argparse - interfejs linii poleceń (parametry) datetime - operacje zwiazane z czasem i kalendarzem dbm - interfejs baz danych DBM distutils - narzędzia do instalowania i tworzenia pakietów Pythona doctest - testowanie dokumentacji html http math - funkcje matematyczne multiprocessing - przetwarzanie wielowatkowe os - interakcje z systemem operacyjnym Biblioteka standardowa 39
49 Krótki przeglad bibloteki standardowej (2) random - generatory liczb losowych (płaski, Gauss) re - wyrażenia regularne smtpd - serwer SMTP smtplib - klient SMTP socketserver - operacje sieciowe niskiego poziomu ssl - OpenSSL sqlite3 - interfejs bazy danych SQLite timeit - pomiary wydajności programu tkinter - Tk GUI unittest - testowanie programu xml zipfile Biblioteka standardowa 40
50 Inne przydatne biblioteki numpy - numerical Python matplotlib QtPy scipy - scientific Python lmfit Ciekawostki SymPy - obliczenia symboliczne Biopython PyChem - astropy - Biblioteka standardowa 41
51 Podsumowanie 1 Dlaczego Python? 2 Podstawy Pythona 3 Podstawowe struktury danych 4 Skrypty 5 Instrukcje kontrolne 6 Struktury danych 7 Funkcje 8 Dokumentacja 9 Moduły i pakiety 10 Operacje I/O 11 Wyjatki 12 Programowanie obiektowe 13 Biblioteka standardowa Podsumowanie 42
Kurs 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
Kurs 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
Ję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
Wykresy i interfejsy użytkownika
Wrocław, 07.11.2017 Wstęp do informatyki i programowania: Wykresy i interfejsy użytkownika Wydział Matematyki Politechniki Wrocławskiej Andrzej Giniewicz Dzisiaj na zajęciach... Instrukcje sterujące Biblioteka
Zaawansowany 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/
Wstęp do Pythona. Janusz Szwabiński. Python w obliczeniach numerycznych (C) 2005 Janusz Szwabiński p.1/36
Wstęp do Pythona Janusz Szwabiński szwabin@ift.uni.wroc.pl Python w obliczeniach numerycznych (C) 2005 Janusz Szwabiński p.1/36 Wstęp do Pythona Zasoby w sieci Python jako zaawansowany kalkulator Pierwszy
Zaawansowany 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ć
Kurs rozszerzony języka Python
Wykład 3. 20 października 2017 Plan wykładu 1 2 Rodzaje kolekcji Przetwarzanie kolekcji 3 4 5 i funkcje Efektywność list Koniec Plan wykładu 1 2 Rodzaje kolekcji Przetwarzanie kolekcji 3 4 5 i funkcje
Python. 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
Spis 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ć
Ję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
Python 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
Programowanie w C++ Wykład 8. Katarzyna Grzelak. 15 kwietnia K.Grzelak (Wykład 8) Programowanie w C++ 1 / 33
Programowanie w C++ Wykład 8 Katarzyna Grzelak 15 kwietnia 2019 K.Grzelak (Wykład 8) Programowanie w C++ 1 / 33 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe
Ś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
Wprowadzenie do Python
Wprowadzenie do Python Marcin Orchel 1 Środowisko Python Zalecane korzystanie z dystrybucji Anaconda. W systemie linux może być już dostępny Python. Sprawdzenie wersji Pythona, python -V. Uruchomienie
Podstawy 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
Ćwiczenie 5. Python 3: Programowanie obiektowe i dziedziczenie
Wizualizacja danych Ćwiczenie 5 Python 3: Programowanie obiektowe i dziedziczenie Dziedziczenie Mając klasę bazową możemy utworzyć klasę pochodną, która będzie dziedziczyć po klasie bazowej czyli będzie
Programowanie w C++ Wykład 9. Katarzyna Grzelak. 14 maja K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30
Programowanie w C++ Wykład 9 Katarzyna Grzelak 14 maja 2018 K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe plus
Python. Wprowadzenie. Jolanta Bachan
Python Wprowadzenie Jolanta Bachan Zainstaluj i przetestuj Pythona https://www.python.org/downloads/ print 'Hello world!' operatory numeryczne: + - * / // % ** operatory porównania: ==!= > < >=
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
Kurs 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
Kurs języka Python Wykład 6. Pliki tekstowe Pliki rekordów Pliki CSV Strumienie
Kurs języka Python Wykład 6. Pliki tekstowe Pliki rekordów Pliki CSV Strumienie Operacje na plikach Otwarcie i zamknięcie pliku: fh = open('plik', 'r') Atrybuty: 'r' odczyt 'w' zapis 'a' dopisanie 'r+'
Listy, 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ę
Ję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
Aby uzyskać zaliczenie w pierwszym terminie (do 30 stycznia 2018) rozliczyć trzeba co najmniej 8 projektów, po 4 z każdej z części: C++ oraz Python.
Aby uzyskać zaliczenie w pierwszym terminie (do 30 stycznia 2018) rozliczyć trzeba co najmniej 8 projektów, po 4 z każdej z części: C++ oraz Python. Pliki z rozwiązaniami projektu (wszystkie polecenia
Python dla początkujących. Małgorzata Niewiem AGH, GGiOŚ, Katedra Geoinformatyki i Informatyki Stosowanej SATIM Satelitarny Monitoring
Python dla początkujących Małgorzata Niewiem AGH, GGiOŚ, Katedra Geoinformatyki i Informatyki Stosowanej SATIM Satelitarny Monitoring Wstęp Stworzony w latach 90 przez Guido van Rossum Nazwa pochodzi od
Podstawy programowania w Pythonie
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
Myś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
Przegląd języka Python. Łukasz Anwajler
Przegląd języka Python Łukasz Anwajler lukasz.anwajler@pjwstk.edu.pl Nie wierzcie mi na słowo Zaraz zobaczymy: czym jest Python dlaczego warto go używać jakie ma zastosowania gdzie z niego korzystają jakzacząć
rozdział 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
Uwagi 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
PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW
PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW http://metodycy.torun.pl/ m.informatyka@metodycy.torun.pl 1. Wprowadzenie do Pythona podstawowe informacje Python to język programowania wysokiego poziomu,
Podstawy 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
Programowanie w C++ Wykład 8. Katarzyna Grzelak. 7 maja K.Grzelak (Wykład 8) Programowanie w C++ 1 / 31
Programowanie w C++ Wykład 8 Katarzyna Grzelak 7 maja 2018 K.Grzelak (Wykład 8) Programowanie w C++ 1 / 31 STL - powtórzenie STL Standard Template Libarary standardowa biblioteka szablonów Składowe biblioteki:
Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.
PYTHON Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program. Aby program napisany w danym języku mógł być wykonany, niezbędne
Programowanie obiektowe
Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy
Plan. krótkie opisy modułów. 1 Uwagi na temat wydajności CPython a. 2 Podstawowe techniki poprawiające wydajność obliczeniową
Plan 1 Uwagi na temat wydajności CPython a 2 Podstawowe techniki poprawiające wydajność obliczeniową 3 Podstawowe techniki poprawiające zużycie pamięci krótkie opisy modułów 1 array - jak oszczędzić na
Programowanie 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
Programowanie 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,
Programista samouk : profesjonalny przewodnik do samodzielnej nauki kodowania / Cory Althoff. Gliwice, copyright Spis treści
Programista samouk : profesjonalny przewodnik do samodzielnej nauki kodowania / Cory Althoff. Gliwice, copyright 2018 Spis treści Część I. Wprowadzenie do programowania 13 Rozdział 1. Wprowadzenie 15 Struktura
TOPIT Załącznik nr 3 Programowanie aplikacji internetowych
Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć
Koło Studentów Informatyki Uniwersytetu Wrocławskiego
Koło Studentów Informatyki Uniwersytetu Wrocławskiego Python programming is fun again! Piotr Wasilewski wasilewski.piotrek (at) gmail.com Akademickie Stowarzyszenie Informatyczne Plan wykładu Wstęp Język
Wstę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
Ć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
Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44
Programowanie w C++ Wykład 2 Katarzyna Grzelak 4 marca 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Na poprzednim wykładzie podstawy C++ Każdy program w C++ musi mieć funkcję o nazwie main Wcięcia
Wstęp do informatyki. Python 1
Wstęp do informatyki Python 1 Python - wprowadzenie Wysokopoziomowy język programowania obiektowego stworzony na początku lat dziewięćdziesiątych XXw. Cechy Pythona: - wszechstronne zastosowania (GUI,
Technologie cyfrowe semestr letni 2018/2019
Technologie cyfrowe semestr letni 2018/2019 Tomasz Kazimierczuk Wykład 8 (15.04.2019) Kompilacja Kompilacja programu (kodu): proces tłumaczenia kodu napisanego w wybranym języku na kod maszynowy, zrozumiały
Zasady programowania Dokumentacja
Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika
Podstawy 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
Informatyka- 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
Programowanie robota mobilnego E-puck w języku Python
Programowanie robota mobilnego E-puck w języku Python Joanna Ratajczak Mirela Kaczmarek 1 Zasady bezpieczeństwa W trakcie pracy z robotem E-puck, rys. 1, należy zachować ostrożność. Pod żadnym pozorem
Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 5. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni Wykład 5 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Standardowa biblioteka szablonów (Standard Template
Wstę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
Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek
Nazwa implementacji: Nauka języka Python pętla for Autor: Piotr Fiorek Opis implementacji: Poznanie innego rodzaju pętli, jaką jest pętla for w języku Python. Składnia pętli for jest następująca: for
Metody 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/
Programowanie obiektowe
Programowanie obiektowe Metody statyczne i klasowe Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) PO w. VI Jesień 2013 1 / 23 W poprzednich odcinkach... Klasy kategorie obiektów Przynależność
PHP: 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ą
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Ję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
Bash - wprowadzenie. Bash - wprowadzenie 1/39
Bash - wprowadzenie Bash - wprowadzenie 1/39 Bash - wprowadzenie 2/39 Czym jest bash? Rysunek : Zadanie powłoki to ukrycie wywołań systemowych Bash - wprowadzenie 3/39 Czym jest bash? Przykład polecenia:
Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH
Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH Michał Bujacz bujaczm@p.lodz.pl B9 Lodex 207 godziny przyjęć: środy i czwartki 10:00-11:00 http://www.eletel.p.lodz.pl/bujacz/ 1 Pytania weryfikacyjne:
Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]
JAVA wprowadzenie do programowania (3/3) [1] Czym jest aplikacja Java Web Start? Aplikacje JAWS są formą pośrednią pomiędzy apletami a aplikacjami Javy. Nie wymagają do pracy przeglądarki WWW, jednak mogą
Ję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,
Python wstęp. Michał Bereta www.michalbereta.pl
Python wstęp Michał Bereta www.michalbereta.pl Wprowadzenie... 1 Źródła wiedzy... 1 Uruchomienie interpretera Pythona... 2 Python jako kalkulator użycie interaktyne... 2 Uruchamianie skryptów z plików...
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
Python wstęp do programowania dla użytkowników WCSS
Python wstęp do programowania dla użytkowników WCSS Dr inż. Krzysztof Berezowski Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Wprowadzenie CHARAKTERYSTYKA JĘZYKA Filozofia języka
Podstawy. Jan Koprowski <jan.koprowski@gmail.com> Politechnika Gdańska, FTiMS Informatyka Stosowana
Podstawy 1 Plan prezentacji Garść informacji Komentarze Stringi Wbudowane typy liczbowe Konstrukcja print Pobieranie danych Konstrukcja if Konstrukcja if else Konstrukcja if elif else Pętla while Pętla
Programowanie w C++ Wykład 6. Katarzyna Grzelak. kwiecień K.Grzelak (Wykład 6) Programowanie w C++ 1 / 40
Programowanie w C++ Wykład 6 Katarzyna Grzelak kwiecień 2019 K.Grzelak (Wykład 6) Programowanie w C++ 1 / 40 STL - powtórzenie STL Standard Template Libarary standardowa biblioteka szablonów Składowe biblioteki:
System 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
Operacje wejścia/wyjścia (odsłona druga) - pliki
Operacje wejścia/wyjścia (odsłona druga) - pliki Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały
Programowanie 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
Podstawy bioinformatyki 2017/18
1 Pętla while JEZYK PROGRAMOWANIA PYTHON: PETLE ITERUJACE, KORZYSTANIE Z PLIKÓW E. Dyguda-Kazimierowicz Instrukcja while, wraz z omówioną poniżej instrukcją for, należą do pętli iterujacych pozwalających
System operacyjny Linux
Paweł Rajba pawel.rajba@continet.pl http://kursy24.eu/ Zawartość modułu 6 Język bash Pierwszy skrypt Rozwinięcia parametryczne Bloki instrukcji Dwa przydatne polecenia Tablice Sprawdzanie warunków Instrukcje
Swift (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
Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41
Programowanie w C++ Wykład 2 Katarzyna Grzelak 5 marca 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41 Reprezentacje liczb w komputerze K.Grzelak (Wykład 1) Programowanie w C++ 2 / 41 Reprezentacje
Wstę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
Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.
JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod
Wyjątki (exceptions)
Instrukcja laboratoryjna nr 6 Programowanie w języku C 2 (C++ poziom zaawansowany) Wyjątki (exceptions) dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż. Tomasz Kaczmarek Wstęp Wyjątki (ang.
KOTLIN. Język programowania dla Androida
KOTLIN Język programowania dla Androida Historia Kotlin został opracowany przez firmę JetBrains Prace rozpoczęto w 2011 r., od 2012 r. dostępny na licencji Apache 2. Nazwa pochodzi od wyspy koło Petersburga
Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych
Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł
Style programowania - krótki przeglad
Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego.
Dla każdej operacji łącznie tworzenia danych i zapisu ich do pliku przeprowadzić pomiar czasu wykonania polecenia. Wyniki przedstawić w tabelce.
Przygotować program tworzący tablicę dwuwymiarową zawierającą zestawy 10 2, 10 4, 10 6 liczb losowych zmiennoprzecinkowych. Korzystając z funkcji bibliotecznych uporządkować zawartość każdego (a) wiersza
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 5. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 5 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Przestrzenie nazw Standardowa biblioteka szablonów
Technologie cyfrowe semestr letni 2018/2019
Technologie cyfrowe semestr letni 2018/2019 Tomasz Kazimierczuk Wykład 7 (08.04.2019) Wikipedia Programowanie komputerów proces projektowania, tworzenia, testowania i utrzymywania kodu źródłowego programów
Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016
Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa
Programowanie 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
Podstawy 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
2. Klasy cz. 2 - Konstruktor kopiujący. Pola tworzone statycznie i dynamicznie - Funkcje zaprzyjaźnione - Składowe statyczne
Tematyka wykładów 1. Wprowadzenie. Klasy cz. 1 - Język C++. Programowanie obiektowe - Klasy i obiekty - Budowa i deklaracja klasy. Prawa dostępu - Pola i funkcje składowe - Konstruktor i destruktor - Tworzenie
Podstawy 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
Kurs 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
1 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 1 1/7 Język C Instrukcja laboratoryjna Temat: Programowanie w powłoce bash (shell scripting) 1 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do programowania w powłoce Skrypt powłoki
Spis 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)
Programowanie i struktury danych
Programowanie i struktury danych 1 / 30 STL Standard Template Library, STL (ang. = Standardowa Biblioteka Wzorców) biblioteka C++ zawierająca szablony (wzorce), które umożliwiają wielokrotne użycie. Główne
Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, Spis treści
Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, 2016 Spis treści Przedmowa XI I Podstawy języka Python 1. Wprowadzenie 3 1.1. Język i środowisko
Podstawy programowania: Python. Wprowadzenie. Jolanta Bachan
Podstawy programowania: Python Wprowadzenie Jolanta Bachan Informacje do kontaktu email: jolabachan@gmail.com strona internetowa: http://bachan.speechlabs.pl/ dyżury w sali 312aB środa, 9:30-10:00 czwartek,
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Delphi 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ść,