Języki skryptowe Python
|
|
- Wiktor Czerwiński
- 7 lat temu
- Przeglądów:
Transkrypt
1 Języki skryptowe Python Wykład 3 Zmienne, wyrażenia, instrukcje Janusz Szwabiński Plan wykładu: Wartości i ich typy Zmienne Instrukcje warunkowe Łańcuchy znaków Pętle Wartości i ich typy Wartości (liczby i litery) należą do podstawowych obiektów przetwarzanych przez programy komputerowe. Są one podzielone na różne typy: 4jest liczbą całkowitą (ang. integer), 3.2jest liczbą zmiennoprzecinkową (float), natomiast "Witaj ściecie"to napis lub łańcuch znaków (string). Napisy rozpoznajemy po cudzysłowach lub apostrofach, w które ujęte. Jeśli nie jesteśmy pewni, jakiego typu jest dana wartość, możemy sprawdzić ją przy pomocy polecenia type: In [1]: type(2) Out[1]: int In [2]: type(3.2) Out[2]: float In [3]: type("cześć") Out[3]: str
2 W powyższych przykładach wyniki działania polecenia typesą sformatowane przez notatnik IPythona. W konsoli zobaczymy raczej coś takiego: >>> type(2) <class 'int'> >>> Liczby ujęte w cudzysłowach lub apostrofach interpretowane są również jako łańcuchy znaków: In [4]: type('3.4') Out[4]: str Warto wiedzieć: jeśli ciąg znaków zawiera poprawne wyrażenie, możemy je wykonać przy pomocy funkcji eval: In [5]: eval('2+2') Out[5]: 4 Uwaga! Do wprowadzania części ułamkowej liczb zmiennoprzecinkowych używamy kropki: In [6]: 1.0 Out[6]: 1.0 In [7]: type(_) Out[7]: float Użycie przecinka nie jest błędem składniowym, ale wynik jest zupełnie inny, niż moglibyśmy się spodziewać. In [8]: 1,0 Out[8]: (1, 0)
3 In [9]: type(_) Out[9]: tuple Zmienne Operowanie na zmiennych to jedna z najważniejszych funkcjonalności, jakie oferują języki programowania. Zmienna to po prostu nazwa, która wskazuje na jakąś wartość. Zmienne tworzymy i nadajemy im wartości operatorem przypisania: In [10]: message = "To jest przykład łańcucha znaków" n = 17 pi = 3.14 Typ zmiennej to po prostu typ wartości, do której zmienna się odnosi: In [11]: type(message) Out[11]: str In [12]: type(n) Out[12]: int In [13]: type(pi) Out[13]: float Ponieważ Python jest językiem o typowaniu dynamicznym, typ zmiennej możemy zmienić w trakcie wykonywania programu: In [14]: n = "To była wcześniej zmienna typu int"
4 In [15]: type(n) Out[15]: str Używać możemy jedynie zmiennych "zdefiniowanych", tzn. takich, którym przypisana jest jakaś wartość: In [20]: b NameError Traceback (most recent ca ll last) <ipython-input-20-3b5d5c371295> in <module>() ----> 1 b NameError: name 'b' is not defined Diagram stanów Bardzo przydatnym narzędziem w projektowaniu i analizie programu jest tzw. diagram stanu (ang. state diagram). W przypadku zmiennych przedstawia on ich stan w każdej chwili czasu, np.: Nazwy zmiennych i słowa kluczowe Nazwy zmiennych w Pythonie mogą być dowolnie długie. Mogą zawierać litery (bez znaków diakrytycznych), cyfry oraz dowolną liczbę podkreślników, jednak nie mogą zaczynać się od cyfr. Wielu (dobrych) programistów wybiera opisowe nazwy zmiennych. Wówczas kod jest bardziej czytelny i łatwiej go analizować, ponieważ na podstawie nazwy można stwierdzić, do czego zmienna jest wykorzystywana: In [21]: t = 7.8 In [22]: temperatureincelsius = 7.8
5 In [24]: temperatureinfahrenheit = 32 + (9/5)*temperatureInCelsius In [25]: print(temperatureinfahrenheit) Powyższy przykład to konwencja nazewnicza mixedcase. Możliwych jest kilka innych. Więcej na ten temat można przeczytać w artykule PEP 0008 Style Guide for Python Code ( 0008/ ( 0008/)). Jeżeli użyjemy niepoprawnej nazwy zmiennej, interpreter Pythona zwróci błąd składni: In [26]: 76trombones = 'wielka parada' File "<ipython-input-26-7f22220e7abb>", line 1 76trombones = 'wielka parada' ^ SyntaxError: invalid syntax In [27]: osiem_puzonów = 'sekcja dęta' In [28]: total@ = File "<ipython-input-28-0c9d8b7bda7c>", line 1 total@ = ^ SyntaxError: invalid syntax In [29]: class = 'Informatyka stosowana' File "<ipython-input-29-20ade69cb30e>", line 1 class = 'Informatyka stosowana' ^ SyntaxError: invalid syntax Pierwsze trzy błędy powinny być oczywiste: w pierwszym przykładzie nazwa zaczyna się od cyfry, w drugim pojawił się znak diakrytyczny, w trzecim niedozwolony W ostatnim przykładzie nazwa jest wprawdzie formalnie poprawna, ale classnależy do tzw. słów kluczowych, czyli zarezerwowanych słów, przy pomocy których definiowana jest składnia języka.
6 In [31]: import keyword keyword.iskeyword('class') Out[31]: Słów kluczowych jest obecnie ponad 30. Nie mogą być one używane jako nazwy zmiennych, a ich zapis musi być zgodny z podanym poniżej: In [32]: keyword.kwlist Out[32]: ['False', 'None', '', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
7 Instrukcje warunkowe Wyrażenia logiczne Wyrażenie logiczne to wyrażenie, które jest albo prawdą () albo fałszem (False). Sprawdzenie, czy dwie liczby są równe, to przykład takiego wyrażenia: In [33]: 5 == 6 Out[33]: False In [34]: 5 == 5 Out[34]: In [35]: val = 5 val == 5 Out[35]: Częstym błędem przy porównaniach jest użycie operatora przypisania =zamiast operatora porównania ==. W przypadku porównywania dwóch literałów będzie to łatwy do zlokalizowania błąd składni: In [36]: 5=4 File "<ipython-input-36-bf9f671a8299>", line 1 5=4 ^ SyntaxError: can't assign to literal W przypadku porównywania zmiennych będziemy mieli natomiast do czynienia z błędem semantycznym, który jest dużo trudniej znaleźć. i Falseto specjalne wartości typu logicznego: In [33]: type() Out[33]: bool
8 In [34]: type(false) Out[34]: bool Używany powyżej operator ==to przykład operatora porównania. Innymi operatorami tego typu są: In [37]: 3!= 4 # nie jest równy Out[37]: In [38]: 3 > 2 # większy Out[38]: In [39]: 3 < 2 # mniejszy Out[39]: False In [40]: 3 >= 2 # większy równy Out[40]: In [41]: 3 <= 2 # mniejszy równy Out[41]: False Operatory logiczne W Pythonie mamy do dyspozycji trzy operatory logiczne: and, ori not. Ich znaczenie jest podobne do znaczenia odpowiadających im słów w języku naturalnym: wyrażenie x > 0 and x < 10będzie miało wartość, jeśli x jest większe od 0 i jednocześnie mniejsze od 10 n%2 == 0 or n%3 == 0będzie miało wartośc, jeśli njest podzielne przed 2 lub przez 3 notneguje wartość wyrażenia logicznego, tzn. not (x>y)będzie prawdą, jeśli x>yjest fałszem
9 In [42]: x = 5 x > 0 and x < 10 Out[42]: In [43]: x = -5 x > 0 and x < 10 Out[43]: False In [44]: n=13 n%2 == 0 or n%3 == 0 Out[44]: False In [45]: n=12 n%2 == 0 or n%3 == 0 Out[45]: In [46]: x < n Out[46]: In [47]: not (x<n) Out[47]: False W zasadzie argumentami operatorów logicznych powinny być wyrażenia logiczne. Jednak Python pod tym względem nie jest bardzo rygorystyczny i każda liczba różna od zera jest traktowana jako :
10 In [48]: 17 and Out[48]: In [49]: -1 and Out[49]: In [50]: 0 and Out[50]: 0 Wyrażenia warunkowe Wyrażenie warunkowe to jedno z ważniejszych poleceń pozwalających kontrolować wywołanie programu. Dzięki niemu możemy spowodować, aby pewne partie programu wykonywały się tylko po spełnieniu pewnych warunków. Składnia podstawowego wyrażenia warunkowego jest następująca: if <warunek>: <instrukcje> Przy tym: warunek ma wartość lub False każda niezerowa liczba lub sekwencja o niezerowej długości oznaczają zero, sekwencja o zerowej długości lub Noneoznaczają False dwukropek po warunku jest ważny (otwiera blok instrukcji) jeśli warunek ma wartość, wykonywane są instrukcje wcięte w stosunku do słowa kluczowego if jeśli warunek ma wartość False, instrukcje są pomijane In [54]: x = eval(input("podaj liczbę: ")) print(type(x)) if x < 0: print("błąd! Liczba ujemna.") Podaj liczbę: -1 <class 'int'> Błąd! Liczba ujemna.
11 W bloku musi być co najmniej jedna instrukcja, natomiast nie ma żadnych ograniczeń na ich maksymalną. Czasami, zwłaszcza w początkowej fazie pisania programu, potrzeba jednak bloku instrukcji, który nie robi nic: In [55]: if x<0: # do zrobienia - przetwarzanie liczb ujemnych File "<ipython-input-55-8e881e2ac4c1>", line 1 if x<0: # do zrobienia - przetwarzanie liczb ujemnych ^ SyntaxError: unexpected EOF while parsing W takiej sytuacji używamy instrukcji pass. Nie robi ona nic, powoduje jednak, że blok ma poprawną składnię: In [56]: if x<0: pass # do zrobienia - przetwarzanie liczb ujemnych Można traktować tę instrukcję jako wypełniacz, który w trakcie rozbudowywania programu zastąpiony zostanie właściwym kodem. Wyrażenia warunkowe można uogólnić na więcej (opcjonalnych) warunków. Składnia ma wówczas postać: if <warunek1>: <instrukcje> elif <warunek2>: <instrukcje> else: <instrukcje> jeśli spełniony jest warunek1, wykonywane są instrukcje z bloku if jeśli spełniony jest warunek2, wykonywane są instrukcje z bloku elif jeżeli żaden z powyższych warunków nie jest spełniony, wykonywany jest blok else In [57]: x = input('podaj liczbę: ') print(type(x)) x = int(x) if x < 0: print("liczba ujemna") elif x == 0: print("bingo! Trafiłeś 0") else: print("liczba dodatnia") Podaj liczbę: 3 <class 'str'> Liczba dodatnia
12 Uwaga! Sekwencja if...elif...elif...elseoferuje podobną funkcjonalność jak instrukcja switch/casespotykana w innych językach programowania. Ponadto, wyrażenia warunkowe możemy zagnieżdżać w sobie: In [59]: x = eval(input('podaj liczbę: ')) y = eval(input('podaj drugą liczbę: ')) if x == y: print("liczby są równe!") else: if x<y: print(x, " jest mniejsze od ", y) else: print(x, " jest większe od ", y) Podaj liczbę: 2 Podaj drugą liczbę: 3 2 jest mniejsze od 3 Łańcuchy znaków (ang. strings) Łańcuch znaków to jeden z wbudowanych sekwencyjnych typów danych w Pythonie. Służy on do przechowywania ciągów znaków. Najważniejsze własności: do definiowania łańcuchów znaków służą cudzysłowy lub apostrofy łańcuchy znaków mogą rozciągać się na wiele linii nie ma oddzielnego typu dla pojedynczego znaku to po prostu łańcuch o długości 1 znaki w łańcuchu można indeksować inaczej niż w C/C++, raz utworzony łańcuch nie może być zmieniony łańcuchy można łączyć przy pomocy operatora + łańcuchy można powtarzać przy pomocy operatora * wsparcie dla unicode Definiowanie łańcuchów znaków In [60]: s = "Witaj świecie" In [63]: print(s) Witaj świecie Ten sam efekt uzyskamy przy pomocy apostrofów:
13 In [64]: s = 'Witaj świecie' print(s) Witaj świecie Rozważmy następujący przykład: In [65]: print(" "Kto tam?" zapytał Wojtek") File "<ipython-input-65-9bb1add46e58>", line 1 print(" "Kto tam?" zapytał Wojtek") ^ SyntaxError: invalid syntax Jak w wielu innych językach programowania, możemy do wewnętrznych cudzysłowów użyć znaków ucieczki, tzn. spowodować, aby interpreter traktował je dosłownie: In [66]: print(" \"Kto tam?\" zapytał Wojtek") "Kto tam?" zapytał Wojtek Jest to jednak mało wygodne (więcej znaków do wprowadzenia). Dlatego dwa rodzaje znaków definiujących łańcuchy znaków okazują się bardzo przydatne: In [67]: print(' "Kto tam?" zapytał Wojtek ') "Kto tam?" zapytał Wojtek In [68]: print("he doesn't...") He doesn't... Powyższe przykłady dotyczyły krótkich łańcuchów znaków. Python obsługuje również napisy dłuższe, rozciągające się na wiele linii. Mamy kilka sposobów na ich wprowadzenie. Po pierwsze, możemy sami wstawiać znak nowej linii, \n: In [69]: halo = "To dość długi łańcuch znaków,\n\ który rozciąga się na wiele\n\ linii"
14 In [70]: print(halo) To dość długi łańcuch znaków, który rozciąga się na wiele linii Znak kontynuacji linii w powyższym przykładzie jest również wymagany: In [71]: halo = "To dość długi łańcuch znaków,\n który rozciąga się na wiele\n linii" File "<ipython-input b6c8dcf0>", line 1 halo = "To dość długi łańcuch znaków,\n ^ SyntaxError: EOL while scanning string literal Inna możliwość to skorzystanie z potrójnych apostrofów lub cudzysłowów: In [72]: halo = """To dość długi łańcuch znaków, który rozciąga się na wiele linii""" In [73]: print(halo) To dość długi łańcuch znaków, który rozciąga się na wiele linii Czasami może się zdarzyć, że interpreter Pythona znajdzie znak nowej linii tam, gdzie go tak naprawdę nie powinno być: In [74]: print("c:\some\name") C:\some ame Rozwiązania tego problemu są dwa. Możemy albo skorzystać ze znanego już znaku ucieczki: In [75]: print("c:\some\\name") C:\some\name
15 albo z tzw. surowych łańcuchów (zwróć uwagę na literę rpoprzedzającą łańcuch znaków): In [76]: print(r"c:\some\name") C:\some\name In [78]: napis = input("jakiś tekst: ") print(napis) Jakiś tekst: he doesn't he doesn't Operacje na łańcuchach Łańcuchy znaków możemy łączyć ze sobą przy pomocy operatora +: In [79]: slowo = 'świt' + 'a' In [80]: print(slowo) świta Jeżeli łączymy ze sobą dwa literały łańcuchowe, możemy pominąć ten operator: In [81]: 'Witaj' ' świecie' Out[81]: 'Witaj świecie' Automatyczne łączenie nie działa jednak w przypadku zmiennych: In [83]: imie = "Janusz" nazwisko = "Szwabiński" In [84]: imie nazwisko File "<ipython-input-84-c cc4a>", line 1 imie nazwisko ^ SyntaxError: invalid syntax
16 In [85]: imie+nazwisko Out[85]: 'JanuszSzwabiński' Mnożenie łańcucha przez skalar to nic innego jak powtarzanie tego łańcucha: In [86]: print(slowo*5) świtaświtaświtaświtaświta Jednak działa to tylko dla liczb całkowitych: In [87]: print(slowo*5.0) TypeError Traceback (most recent ca ll last) <ipython-input-87-a14ebdf38ba7> in <module>() ----> 1 print(slowo*5.0) TypeError: can't multiply sequence by non-int of type 'float' Działania na łańcuchach znaków możemy oczywiście ze sobą łączyć: In [88]: '<' + 2*slowo + '>' Out[88]: '<świtaświta>' Formatowanie łańcuchów znaków In [89]: txt = "kilka liczb: " x = 2 y = 1.34 z = 2 + 3j In [90]: text1 = "%s %d, %.2f, %.2f+%.2fi" % (txt,x,y,z.real,z.imag)
17 In [91]: print(text1) kilka liczb: 2, 1.34, i In [92]: text2 = "%s %d, %f, %s" % (s,x,y,z) In [93]: print(text2) Witaj świecie 2, , (2+3j) Indeksowanie łańcuchów znaków Łańcuch znaków to nic innego jak ciąg znaków, z których każdy ma określoną pozycję. Dostęp do poszczególnych znaków w ciągu uzyskamy przy pomocy nawiasów kwadratowych: In [94]: slowo = 'taczka' znak = slowo[1] Wyrażenie w nawiasie kwadratowym to indeks. Wskazuje on znak, do którego zażądaliśmy dostępu. Czyli zmienna znak wskazuje na literę w słowie o indeksie 1: In [95]: print(znak) a Okazuje się jednak, że nie jest to pierwsza litera tego słowa. W Pythonie, podobnie jak w C/C++ i wielu innych językach, indeksowanie sekwencyjnych typów danych zaczyna się od : In [96]: print(slowo[0]) t 0 In [97]: print(slowo[1]) a In [98]: print(slowo[5]) a
18 Długość łańcucha, czyli liczbę znaków w łańcuchu, odczytamy przy pomocy funkcji len: In [99]: len(slowo) Out[99]: n 1 n n Ponieważ indeksowanie zaczyna się od a nie od, ostatni element łańcucha ma indeks, a nie ( to liczba znaków): In [100]: n = len(slowo) print(slowo[n-1]) a Dlatego użycie długości łańcucha jako indeksu spowoduje wyjście poza zakres: In [101]: print(slowo[n]) IndexError Traceback (most recent ca ll last) <ipython-input-101-d348d > in <module>() ----> 1 print(slowo[n]) IndexError: string index out of range Python wspiera również tworzenie wycinków z łańcuchów znaków (ogólnie ze wszystkich typów sekwencyjnych): In [102]: slowo[0:3] #elementy od indeksu 0 (włącznie) do indeksu 3 (bez tego indeksu) Out[102]: 'tac' In [103]: slowo[:2] #dwie pierwsze litery Out[103]: 'ta'
19 In [104]: slowo[2:] #wszystkie oprócz dwóch pierwszych Out[104]: 'czka' Przy wycinkach nie ma błędu z wyjściem poza zakres: In [105]: slowo[2:100] Out[105]: 'czka' Indeksy ujemne Python dopuszcza ujemne indeksy we wszystkich sekwencyjnych typach danych. Przy tym, indeks należy rozumieć jako : n k k In [106]: slowo[-1] #ostatnia litera Out[106]: 'a' In [107]: slowo[-2] #przedostatnia Out[107]: 'k' In [108]: slowo[-2:] #dwie ostatnie Out[108]: 'ka' In [109]: slowo[0:-2] #wszystkie oprócz dwóch ostatnich Out[109]: 'tacz'
20 In [110]: slowo[-0] #jak w matematyce: -0=0 Out[110]: 't' Niezmienny typ danych Łańcuchy znaków w Pythonie to jeden z tzw. niezmiennych typów danych. Oznacza to tylko tyle, że raz utworzony, nie może zostać zmieniony: In [111]: print(slowo) taczka In [112]: slowo[0] = 'k' TypeError Traceback (most recent ca ll last) <ipython-input-112-bdf5d26b7f3e> in <module>() ----> 1 slowo[0] = 'k' TypeError: 'str' object does not support item assignment Nie jest to jednak wielkim ograniczeniem, ponieważ możliwa jest taka operacja: In [113]: slowo = 'k' + slowo[1:] In [114]: print(slowo) kaczka Ostatnie wyrażenie oznacza tyle, że z dwóch łańcuchów znaków stworzony został nowy napis, a następnie nadano mu nazwę slowo. Jeżeli w programie nie było więcej zmiennych wskazujących na stary napis, to niemożliwe jest uzyskanie dostępu do niego i zostanie on usunięty przez interpreter w celu zwolnienia zasobów. Dlatego efekt końcowy przypomina po prostu zmodyfikowanie łańcucha znaków znane z innych języków, mimo że od podszewki jest to zupełnie inna operacja. Łańcuchy znaków i ich metody
21 Metoda przypomina swoim działaniem funkcję pobiera argumenty i zwraca jakiś wynik, ma jednak inną niż funkcja składnię. Rozważmy metodę upper, która w podanym jako argument łańcuchu znaków zmienia wszystkie małe litery na duże i tworzy z nich nowy łańcuch. Gdyby upperbyła funkcją, jej wywołanie wygładałoby następująco: upper(slowo) Jako metoda wywoływane jest tak: In [115]: nowe_slowo = slowo.upper() In [116]: print(nowe_slowo) KACZKA Najpierw podajemy nazwę zmiennej (lub literał) na której chcemy wykonać metodę, po której następuje kropka, a po kropce nazwa metody. Puste nawiasy w powyższym przykładzie oznaczają, że metoda nie potrzebuje dodatkowych argumentów do wykonania. Przykładem metody, która wymaga argumentu, jet metoda find. Służy ona do wyszukiwania podanych znaków w łańcuchu: In [117]: print(slowo) kaczka In [118]: index = slowo.find('cz') print(index) 2 In [119]: print(slowo.find('a')) 1 Wywołując find, możemy podać jeszcze jeden argument indeks, od którego należy rozpocząć przeszukiwanie: In [120]: print(slowo.find('a',2)) 5 Natomiast trzecim argumentem może być indeks, na którym należy skończyć wyszukiwanie:
22 In [121]: print(slowo.find('a',2,4)) -1 Wynik 1 oznacza, że w podanym zakresie nie było żadnych trafień. Operator in Słowo kluczowe injest operatorem logicznym, który dla dwóch argumentów sprawdza, czy pierwszy jest podciągiem drugiego. In [122]: print(slowo) kaczka In [123]: 'kac' in slowo Out[123]: In [124]: 't' in slowo Out[124]: False Porównywanie łańcuchów znaków Operator ==pozwoli nam sprawdzić, czy łańcuchy znaków są takie same: In [125]: print(slowo) kaczka In [127]: if slowo == 'kaczka': print("uwaga! Sezon polowań na kaczki już trwa") Uwaga! Sezon polowań na kaczki już trwa Pozostałe operatory porównań również działają. Można je wykorzystać do ustalenia porządku alfabetycznego wyrazów.
23 In [128]: if slowo < 'taczka': print(slowo, 'taczka') else: print('taczka', slowo) kaczka taczka In [129]: slowo2 = 'paczka' if slowo2 < 'kaczka': print(slowo2, 'kaczka') else: print('kaczka', slowo2) kaczka paczka Jedyny problem z porównywaniem wyrazów związany jest z tym, że Python inaczej niż ludzie w życiu codziennym traktuje wielkie litery (wielkie litery przed małymi). In [130]: 'paczka' < 'taczka' Out[130]: In [131]: 'paczka' < 'Taczka' Out[131]: False Aby uniknąć błędu spowodowanego tą własnością, przed porównywaniem warto jest przekonwertować oba napisy do jakiegoś standardowego formatu, np. do małych liter: In [132]: 'paczka'.lower() < 'Taczka'.lower() Out[132]:
24 Pętle Obok instrukcji warunkowych pętle to jedne z ważniejszych konstrukcji programowania strukturalnego. Umożliwiają cykliczne wykonywanie ciągu instrukcji określoną liczbę razy lub do momentu zajścia pewnych warunków. W Pythonie mamy do dyspozycji dwie pętle, fori while. Pętla for Instrukcja forw Pythonie różni się od pętli o tej samej nazwie w C/C++, ponieważ iteracja nie odbywa się od liczby do liczby, a po elementach dowolnej sekwencji (łańcucha znaków, listy, krotki itp.) w takim porządku, w jakim są one umieszczone w sekwencji: In [133]: przedrostki = 'kpt' przyrostek = 'aczka' for przedrostek in przedrostki: print(przedrostek+przyrostek) kaczka paczka taczka Ogólnie, składnia pętli forma postać: for <zmienna> in <sekwencja>: <instrukcje> W dalszej części wykładu poznamy inne typy sekwencji, po elementach których można iterować. Natomiast tutaj wspomnimy tylko o jednej funkcji, dość często wykorzystywanej w pętlach, zwłaszcza przez początkujących programistów w Pythonie z doświadczeniami w innych językach programowania: In [1]: for i in range(5): print(i) In [9]: for i in range(2,5): print(i,i**2)
25 In [8]: for i in range(0,10,2): print(i,i**3) In [4]: print(range(5)) range(0, 5) In [5]: type(range(5)) Out[5]: range Chociaż rzeczywiście wywołujemy rangejako funkcję, jest to raczej typ danych reprezentujący niezmienną sekwencję liczb. Wykorzystuje się go najczęście w petlach fordo wykonania określonej liczby powtórzeń. Pętla while Pętla whilesłuży do cyklicznego wykonywania ciągu instrukcji do momentu, aż warunek przestanie być spełniony: while <warunek>: <instrukcje> In [134]: fruit = 'Banana' index = 0 while index < len(fruit): letter = fruit[index] print(letter) index = index + 1 B a n a n a
26 Instrukcje breaki continue Instrukcja breakpowoduje wyjście z najbliższej zagnieżdżonej pętli forlub while. Rozważmy przykład: In [136]: fruit = 'banana' index = 0 while 1: #w zasadzie pętla nieskończona print(fruit[index]) index = index + 1 b a n a n a IndexError Traceback (most recent ca ll last) <ipython-input ccf1b8> in <module>() 2 index = 0 3 while 1: #w zasadzie pętla nieskończona ----> 4 print(fruit[index]) 5 index = index + 1 IndexError: string index out of range Aby uniknąć błędu, możemy przerwać pętlę w odpowiednim momencie: In [137]: fruit = 'banana' index = 0 while 1: #w zasadzie pętla nieskończona print(fruit[index]) index = index + 1 if index == len(fruit): break b a n a n a Instrukcja continuepowoduje przejście do następnego kroku iteracji:
27 In [138]: fruit = 'Banana' for letter in fruit: if letter == 'a': continue print(letter) B n n
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
Bardziej szczegółowoPodstawy programowania. Python wykład 6
Podstawy programowania Python wykład 6 Funkcja wbudowana chr() Wywołanie funkcji chr() z argumentem m zwraca łańcuch znaków reprezentujący znak, którego punktem kodowym w Unicode jest liczba całkowita
Bardziej szczegółowoŚ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
Bardziej szczegółowoJę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
Bardziej szczegółowoPython. Wprowadzenie. Jolanta Bachan
Python Wprowadzenie Jolanta Bachan Zainstaluj i przetestuj Pythona https://www.python.org/downloads/ print 'Hello world!' operatory numeryczne: + - * / // % ** operatory porównania: ==!= > < >=
Bardziej szczegółowoPython 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
Bardziej szczegółowoPodstawy 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
Bardziej szczegółowoOpis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].
ABAP/4 Instrukcja IF Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. [ELSEIF warunek. ] [ELSE. ] ENDIF. gdzie: warunek dowolne wyrażenie logiczne o wartości
Bardziej szczegółowoLiczby losowe i pętla while w języku Python
Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak
Bardziej szczegółowoProgramowanie 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
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoPodstawy Programowania C++
Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:
Bardziej szczegółowoSwift (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
Bardziej szczegółowoPodstawy Programowania Podstawowa składnia języka C++
Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoPodstawy 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:
Bardziej szczegółowoNaukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem
Moduł 1 1. Wprowadzenie do języka Python Python jest dynamicznym językiem interpretowanym. Interpretowany tzn. że kod, który napiszemy możemy natychmiast wykonać bez potrzeby tłumaczenia kodu programistycznego
Bardziej szczegółowoTypy danych, cd. Łańcuchy znaków
Typy danych, cd. Łańcuchy znaków Typ danych string, jest rozumiany jako łańcuch znaków - liter, cyfr i symboli. Stringi definiuje się w podwójnych lub pojedyńczych cudzysłowach. typ_ kawy = " latte " typ_herbaty
Bardziej szczegółowoAlgorytmy i struktury danych
Algorytmy i struktury danych 4. Łódź 2018 Suma szeregu harmonicznego - Wpisz kod programu w oknie edycyjnym - Zapisz kod w pliku harmonic.py - Uruchom skrypt (In[1]: run harmonic.py) - Ten program wykorzystuje
Bardziej szczegółowoProgramowanie 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
Bardziej szczegółowoUwagi 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
Bardziej szczegółowoPrzeglą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ąć
Bardziej szczegółowoPodstawy 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
Bardziej szczegółowoPodstawy 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
Bardziej szczegółowoNazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe Autor: Piotr Fiorek Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nasz kalkulator umie już liczyć, ale potrafi przeprowadzać
Bardziej szczegółowoAlgorytmy i struktury danych
Algorytmy i struktury danych 3. Elementy programu i typy danych Łódź 2018 Ćwiczenie Body Mass Index - Edytuj kod programu - Zapisz go w pliku bmi.py - Uruchom skrypt >>> Enter your name: Jacek >>> Enter
Bardziej szczegółowoKurs 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
Bardziej szczegółoworozdział 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
Bardziej szczegółowoPython. 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
Bardziej szczegółowoWykresy 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
Bardziej szczegółowoMyś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
Bardziej szczegółowoInstrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:
Instrukcje sterujące wer. 11 z drobnymi modyfikacjami! Wojciech Myszka 2017-07-05 10:53:09 +0200 Ala ma kota Część I Prosty przykład Problem 1. Zadanie polega na tym, żeby opracować algorytm który dla
Bardziej szczegółowoStałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
Bardziej szczegółowoPodstawy bioinformatyki 2017/18
JEZYK PROGRAMOWANIA PYTHON: SEKWENCJE (ŁAŃCUCHY, LISTY, KROTKI), METODY LIST E. Dyguda-Kazimierowicz 1 Sekwencje: indeksowanie i wycinanie Poznane dotąd obiekty łańcuchowe należą do typu danych złożonych
Bardziej szczegółowoSwift (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
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 7 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 28 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoPODSTAWY INFORMATYKI 1 PRACOWNIA NR 6
PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 TEMAT: Programowanie w języku C/C++: instrukcje iteracyjne for, while, do while Ogólna postać instrukcji for for (wyr1; wyr2; wyr3) Instrukcja for twory pętlę działającą
Bardziej szczegółowoMETODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH ĆWICZENIE NR 9 WYRAŻENIA LOGICZNE, INSTRUKCJE WARUNKOWE I INSTRUKCJE ITERACYJNE W PROGRAMIE KOMPUTEROWYM MATLAB Dr inż. Sergiusz Sienkowski ĆWICZENIE NR
Bardziej szczegółowoJę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
Bardziej szczegółowoInformatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki
Informatyka I Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Operacje relacji (porównania) A
Bardziej szczegółowoPodstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Pętle Pętla jest konstrukcją sterującą stosowaną w celu wielokrotnego wykonania tego samego zestawu instrukcji jednokrotne
Bardziej szczegółowoSpis 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ć
Bardziej szczegółowoLaboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych
1. Wstawianie skryptu na stroną: Laboratorium 1 Do umieszczenia skryptów na stronie służy znacznik: //dla HTML5 ...instrukcje skryptu //dla HTML4 ...instrukcje
Bardziej szczegółowoSkrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać
MatLab część III 1 Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać komentarze poprzedzone znakiem % Skrypty
Bardziej szczegółowoJęzyk skryptowy: Laboratorium 1. Wprowadzenie do języka Python
Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python Język PYTHON Podstawowe informacje Python to język skryptowy, interpretowany - co oznacza, że piszemy skrypt, a następnie wykonujemy go za
Bardziej szczegółowoPętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2
Pętle wielokrotne wykonywanie ciągu instrukcji. Bardzo często w programowaniu wykorzystuje się wielokrotne powtarzanie określonego ciągu czynności (instrukcji). Rozróżniamy sytuacje, gdy liczba powtórzeń
Bardziej szczegółowoListy, 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ę
Bardziej szczegółowoPętle. Dodał Administrator niedziela, 14 marzec :27
Pętlami nazywamy konstrukcje języka, które pozwalają na wielokrotne wykonywanie powtarzających się instrukcji. Przykładowo, jeśli trzeba 10 razy wyświetlić na ekranie pewien napis, to można wykorzystać
Bardziej szczegółowoZasady 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
Bardziej szczegółowoPodstawy 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
Bardziej szczegółowoPodstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 5 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 7 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Bardziej szczegółowoWprowadzenie do Scilab: podstawy języka Scilab
Wprowadzenie do Scilab: podstawy języka Scilab Magdalena Deckert, Izabela Szczęch, Barbara Wołyńska, Bartłomiej Prędki Politechnika Poznańska, Instytut Informatyki Narzędzia Informatyki Narzędzia Informatyki
Bardziej szczegółowo2. Łańcuchy tekstowe w PHP
2. Łańcuchy tekstowe w PHP 2.1 Apostrofy i cudzysłowy Łańcuch tekstowy w języku PHP to ciąg znaków ograniczony apostrofami (') lub cudzysłowami ("). Te znaki ograniczające nie powinny być traktowane wymiennie,
Bardziej szczegółowoJęzyk C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop
Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop. 2016 Spis treści Wprowadzenie 11 Adresaci książki 12 Co wyróżnia tę książkę na
Bardziej szczegółowoPodstawy bioinformatyki 2017/18
JEZYK PROGRAMOWANIA PYTHON: WYRAŻENIA LOGICZNE I INSTRUKCJA WARUNKOWA, METODY OBIEKTÓW ŁAŃCUCHOWYCH E. Dyguda-Kazimierowicz 1 Wyrażenia i operatory logiczne Wyrażenia logiczne (warunkowe, boolowskie) to
Bardziej szczegółowoInformatyka- 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
Bardziej szczegółowoECDL Podstawy programowania Sylabus - wersja 1.0
ECDL Podstawy programowania Sylabus - wersja 1.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu Podstawy programowania. Sylabus opisuje, poprzez efekty uczenia się, zakres wiedzy
Bardziej szczegółowo1. Indeksy/indeksowanie : Do elementów wektora, list, macierzy czy ramek, można się odwołać na kilka sposobów.
Rachunek Prawdopodobieństwa i Statystyka lab 2. Kaja Chmielewska ( Kaja.Chmielewska@cs.put.poznan.pl ) 1. Indeksy/indeksowanie : Do elementów wektora, list, macierzy czy ramek, można się odwołać na kilka
Bardziej szczegółowoOczywiście plik musi mieć rozszerzenie *.php
Oczywiście plik musi mieć rozszerzenie *.php Znaczniki PHP komunikują serwerowi gdzie rozpoczyna się i kończy kod PHP. Tekst między nimi jest interpretowany jako kod PHP, natomiast poza nimi jako kod HTML.
Bardziej szczegółowoWykład 2 Składnia języka C# (cz. 1)
Wizualne systemy programowania Wykład 2 Składnia języka C# (cz. 1) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Budowa projektu 2 Struktura programu
Bardziej szczegółowoWstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy
Bardziej szczegółowoStruktura pliku projektu Console Application
Struktura pliku projektu Console Application #include #include using namespace std; int main(int argc, char *argv[]) // to jest komentarz system("pause"); return EXIT_SUCCESS; Na początku
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoJęzyk JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,
Bardziej szczegółowoPodstawy programowania w C++
Podstawy programowania w C++ Liczby w jaki sposób komputery je widzą? Opracował: Andrzej Nowak Bibliografia: CPA: PROGRAMMING ESSENTIALS IN C++ https://www.netacad.com Czy wiesz, jak komputery wykonują
Bardziej szczegółowoZaawansowany 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/
Bardziej szczegółowoInformatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki
Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu
Bardziej szczegółowoProgramowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Bardziej szczegółowolekcja 8a Gry komputerowe MasterMind
lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych
Bardziej szczegółowoJak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest
Pętle Pętla to pewien fragment kodu, który jest wykonywany wielokrotnie. Wyobraź sobie taką sytuację. Piszesz program do szyfrowania danych. Dane są szyfrowane kolejno bajt po bajcie. Załóżmy, że plik
Bardziej szczegółowoWstęp do Informatyki i Programowania (kierunek matematyka stosowana)
Wstęp do Informatyki i Programowania (kierunek matematyka stosowana) Jacek Cichoń Przemysław Kobylański Instytut Matematyki i Informatyki Politechnika Wrocławska Na podstawie: M.Summerfield.Python 3. Kompletne
Bardziej szczegółowoKOTLIN. 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
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania wykład 2 Piotr Cybula Wydział Matematyki i Informatyki UŁ 2012/2013 http://www.math.uni.lodz.pl/~cybula Język programowania Każdy język ma swoją składnię: słowa kluczowe instrukcje
Bardziej szczegółowoProgramowanie 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
Bardziej szczegółowoByć może jesteś doświadczonym programistą, biegle programujesz w Javie,
Kompendium PHP 01 Być może jesteś doświadczonym programistą, biegle programujesz w Javie, C++, Pythonie lub jakimś innym języku programowania, których jak myślę, powstało już tyle, że chyba nie ma osoby,
Bardziej szczegółowoWarsztaty dla nauczycieli
WPROWADZENIE Wyprowadzanie danych: Wyprowadzanie na ekran komunikatów i wyników umożliwia instrukcja wyjścia funkcja print(). Argumentami funkcji (podanymi w nawiasach) mogą być teksty, wyrażenia arytmetyczne
Bardziej szczegółowoWyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal
Bardziej szczegółowoWstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy Laboratorium 1 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Na podstawie: G. Perry, D. Miller, Język C Programowanie dla
Bardziej szczegółowoLABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab
LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI Wprowadzenie do środowiska Matlab 1. Podstawowe informacje Przedstawione poniżej informacje maja wprowadzić i zapoznać ze środowiskiem
Bardziej szczegółowoPodstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.
M. Trzebiński C++ 1/14 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IVedycja,2016r. IFJ PAN Przygotowanie środowiska pracy Niniejsza
Bardziej szczegółowoBloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Bardziej szczegółowoSWIFT. Zaawansowane Programowanie Obiektowe
SWIFT Zaawansowane Programowanie Obiektowe 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
Bardziej szczegółowoPytania dla języka Python
XIV OIJ, zawody I stopnia, tura testowa 16 września 2019 1 stycznia 2020 Poniżej znajdują się pytania testowe z zawodów I stopnia XIV Olimpiady Informatycznej Juniorów () na teście wiedzy (do rozwiązania
Bardziej szczegółowoProgramista 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
Bardziej szczegółowo3. Instrukcje warunkowe
. Instrukcje warunkowe Przykłady.1. Napisz program, który pobierze od użytkownika liczbę i wypisze na ekran słowo ujemna lub nieujemna, w zależności od tego czy dana liczba jest ujemna czy nie. 1 #include
Bardziej szczegółowoJę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
Bardziej szczegółowoNazwa 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
Bardziej szczegółowoWidoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?
Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz
Bardziej szczegółowoLaboratorium 03: Podstawowe konstrukcje w języku Java [2h]
1. Typy. Java jest językiem programowania z silnym systemem kontroli typów. To oznacza, że każda zmienna, atrybut czy parametr ma zadeklarowany typ. Kompilator wylicza typy wszystkich wyrażeń w programie
Bardziej szczegółowoInstytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium
Bardziej szczegółowoPROGRAMOWANIE W JĘZYKU PYTHON
D-10 pokój 227 PROGRAMOWANIE W JĘZYKU PYTHON Dr inż. Grażyna KRUPIŃSKA Prezentacja algorytmu w języku programowania Aby przedstawić algorytm w postaci programu, trzeba go napisać jako ciąg instrukcji języka
Bardziej szczegółowoLekcja 3: Pierwsze kroki z Pythonem. Pętle
#SuperKoderzy www.superkoderzy.pl Mikrobitowcy Autorzy: Filip Kłębczyk Lekcja 3: Pierwsze kroki z Pythonem. Pętle Podczas lekcji uczniowie zapoznają się z dwoma rodzajami pętli - for i while - analizując
Bardziej szczegółowoUmieszczanie kodu. kod skryptu
PHP Definicja PHP jest językiem skryptowym służącym do rozszerzania możliwości stron internetowych. Jego składnia jest bardzo podobna do popularnych języków programowania C/C++, lecz jest bardzo uproszczona
Bardziej szczegółowoZMIENNE. Podstawy PHP
ZMIENNE Podstawy PHP zmienna - to obiekt w programowaniu, który przechowuje różnego rodzaju dane niezbędne do działania programu. Zmienna podczas działania programu może zmieniad swoje wartości (jak wskazuje
Bardziej szczegółowoProgramowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++
Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu
Bardziej szczegółowo