Wykład 1
Transkrypt
Wykład 1
Podstawy programowania PYTHON – Wykład 1 Dlaczego PYTHON? ● Język programowania obiektowego. ● Darmowy. ● Przenośny. ● Wydajny dzięki: typom dynamicznym, typom wbudowanym (jak listy, słowniki, łańcuchy, itp.), narzędziom wbudowanym (np. łączenie kolekcji, wycinanie, sortowanie, odwzorowanie, itp.), narzędzia biblioteczne (od wyrażeń regularnych po obsługę sieci i trwałości obiektów), narzędzia obce (np. do przetwarzania obrazów, pośredniki XML), automatyczne zarządzanie pamięcią (automatyczne przydzialanie pamięci i zwalnianie gdy obiekt przestaje być używany, zwiększanie lub zmniejszanie pamięci), wspomaganie dużych projektów (moduły, klasy i wyjątki). ● Prosty w użyciu. ● Łatwo się go nauczyć :) Zastosowanie ● ● ● ● ● ● ● Jako narzędzie do tworzenia skryptów korzystających z innych komponent. Do tworzenia autonomicznie działajacych programów. Służy do pisania przenośnych i zarządzalnych narzędzi dla administratora systemu. Służy do tworzenia interfejsów graficznych (GUI). Służy jako „język scalający” w skryptach korzystających z innych systemów i komponent. Tworzenie skryptów internetowych. Przetwarzanie obrazów, sztuczna inteligencja, obiekty rozproszone i inne. PYTHON w produktach komercyjnych ● Red Hat – w narzędziach do instalacji Linuksa. ● Microsoft – program częściowo napisany w języku Python. ● Infoseek – do tworzenia i obsługi wyszukiwarek internetowych. ● Yahoo! – w wielu usługach internetowych. ● NASA – w systemie sterowania lotami kosmicznymi. ● i wielu, wielu innych. Sposoby uruchamiania programów ● interakcyjnie – wiersz poleceń, ● jako plik modułowy – import plik, ● jako skrypt – ze zdefiniowaną ścieżką do interpretera na danym komputerze, plikom nadaje się atrybut wykonywalności (UNIX), ● wbudowanych w inny system, ● specyficznie dla danej platformy. Obiekty wbudowane ● Liczby: 3.14, 1234, 3+4j ● Łańcuchy: 'ala', ''ola'' ● Listy: [1,[2,'trzy'],4] ● Słowniki: {'jedzenie':'mielonka', 'smak':'taki sobie'} ● Krotki: (1,'mielonka', 4, 'U') ● Pliki: text = open('mpj','r').read() Operatory wyrażeń ● or ● and ● not ● <, <=, >, >=, ==, != ● is, is not ● in not in ● | ● ^ ● & ● >>, << ● +, - ● *, /, //, % ● ** UWAGI ● Prawdą jest każda wartość różna od 0. ● Wartości boolowskie (bool): True i False ● operator przypisania: – a = 12 – a = b = c = d = 12 – a, b, c = 1, 2, 3 Łańcuchy ● s = '' ● s1 = 'mielonka' ● s2 = 'golonka' ● s1+s2 ● s1[2] ● s2[3:] ● s1[:-2] ● s2[3:6] ● s1[-2] Modyfikacja i formatowanie łańcuchów ● s = 'ala' ● s[0] = ''x'' ● s = s + 'ola' ● 'To jest %d %s' % (1, 'student') ● 'To jest %d %s' % (2, s) Nazwy zmiennych ● Składnia: (podkreślenie lub litera) + (dowolna liczba liter, cyfr lub podkreśleń) ● Wielkość liter: rozróżnialna ● Słowa zastrzeżone nie mogą być użyte jako nazwy: and assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while Wczytywanie, wypisywanie, typ ● print('Ala ma kota') ● x = 12 print(''x='',x) ● x=input(''x='') ● type(2) ● type(2.0) ● type(2+4j) ● type([1,2,3,4]) ● type({1,2,3,4}) ● type({1:23,2:34}) ● type((1,2,3,4))