• Nie Znaleziono Wyników

Wprowadzenie, sprawy organizacyjne

N/A
N/A
Protected

Academic year: 2021

Share "Wprowadzenie, sprawy organizacyjne"

Copied!
52
0
0

Pełen tekst

(1)

Wykład 1.

Marcin Młotkowski

(2)

Sprawy organizacyjne O języku Praca z Pythonem Język Python

Plan wykładu

1 Sprawy organizacyjne 2 O języku 3 Praca z Pythonem 4 Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

(3)

Plan wykładu

1 Sprawy organizacyjne 2 O języku 3 Praca z Pythonem 4 Język Python Typy proste Kolekcje

(4)

Sprawy organizacyjne

O języku Praca z Pythonem Język Python

Wykładowca: Marcin Młotkowski

Termin wykładu: środa, 12:15–14:00, sala 25

Strona wykładu http://www.ii.uni.wroc.pl/˜marcinm/dyd/python

(5)

Materiały pomocnicze

www.python.org

Dive into Python, Mark Pilgrim

Expert Python Programming, Tarek Ziade

The Hitchhiker Guide to Python, Kenneth Reitz, Tanya Schlusser

Python 3 Object Oriented Programming, Dusty Phillips Python3 Patterns & Idioms Book, Bruce Eckel

(6)

Sprawy organizacyjne

O języku Praca z Pythonem Język Python

Pracownia

Pierwsza część semestru (ok. 10 tyg.) — listy z krótkimi zadaniami programistycznymi

Druga część semestru — większy projekt Zaliczenie

Zdobycie przynajmniej połowy punktów.

(7)

Plan kursu

1 Język Python

składnia, typy podstawowe, wbudowane struktury danych, obiekty, programowanie funkcjonalne

2 Standardowe biblioteki

przetwarzanie tekstu, bazy danych, interfejsy graficzne, I/O, protokoły sieciowe, wątki, SciPy, NumPy

3 Zaawansowane zagadnienia

testowanie i dokumentowanie, refleksje, współpraca z innymi językami

(8)

Sprawy organizacyjne O języku Praca z Pythonem Język Python

Plan wykładu

1 Sprawy organizacyjne 2 O języku 3 Praca z Pythonem 4 Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

(9)

Początki języka Python

(10)

Sprawy organizacyjne

O języku

Praca z Pythonem Język Python

Stan obecny

Python Software Foundation (PSF)

(11)

Sprawy organizacyjne O języku Praca z Pythonem Język Python

Aktualna wersja (1.10.2019)

2.7.14 3.7.16

(12)

Sprawy organizacyjne O języku Praca z Pythonem Język Python

Aktualna wersja (1.10.2019)

2.7.14 3.7.16

Ranking popularności języków programownia TIOBE: 3 pozycja https://www.tiobe.com/tiobe-index/python/

(13)

Dlaczego Python jest fajny

Realizacja różnych paradygmatów

Paradygmat programowania strukturalnego Paradygmat programowania obiektowego Paradygmat programowania funkcjonalnego

(14)

Sprawy organizacyjne

O języku

Praca z Pythonem Język Python

Dlaczego Python jest fajny

Wbudowane typy: Listy

vec = [1, 2, 3]

doubled_vec = [ 2*e for e in vec] Słowniki

tel = { ’krzysiek’ : 235711, ’ewa’ : 246810 } print tel[’ewa’]

(15)

Dlaczego Python jest fajny

Batteries included

Biblioteki operacji we/wy Obsługa wyrażeń regularnych HTTP, HTML, XML

Interfejsy okienkowe (pyGTK, wxPython, Tkinter) SciPy, NumPy

(16)

Sprawy organizacyjne

O języku

Praca z Pythonem Język Python

Inne cechy Pythona

Dynamiczny system typów >>> 2 + "dwa"

Traceback (most recent call last): File "<stdin>", line 1, in ?

TypeError: unsupported operand type(s) for +: ’int’ and ’str’

>>>

(17)

Zastosowania

Projekty

Narzędzia systemowe (RedHat), Google Django

(18)
(19)

Plan wykładu

1 Sprawy organizacyjne 2 O języku 3 Praca z Pythonem 4 Język Python Typy proste Kolekcje

(20)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Tryb interaktywny $ python3 >>> 2+2 4 >>> [1,2,3][-1:] [3] Ctrl-d $

(21)

Pierwsza pomoc w nagłej potrzebie

Tryb interaktywny >>> type(3.1415) <type ’float’> >>> dir(float) .... >>> dir(3.1415) .... >>> float.__doc__

(22)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Tryb wsadowy $ python3 plik.py Co się dzieje 1 Kompilacja programu

2 Czasem tworzy się plik *.pyc

3 Program jest wykonywany

(23)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Tryb wsadowy $ python3 plik.py Co się dzieje 1 Kompilacja programu

(24)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Tryb wsadowy $ python3 plik.py Co się dzieje 1 Kompilacja programu

2 Czasem tworzy się plik *.pyc

3 Program jest wykonywany

(25)

Sprawy organizacyjne O języku

Praca z Pythonem

Język Python

Wskazówki

Edytory z podświetleniem składni: vim, gedit, geany, emacs

PythonCard/codeEditor PyCharm

Visual Studio Code

Jupyter

Pliki ”wykonywalne” i polskie litery: plik.py

#!/usr/bin/python

(26)

-*-Sprawy organizacyjne O języku

Praca z Pythonem

Język Python

Wskazówki

Edytory z podświetleniem składni: vim, gedit, geany, emacs Narzędzia

idle

PythonCard/codeEditor PyCharm

Visual Studio Code

Jupyter

Pliki ”wykonywalne” i polskie litery: plik.py

#!/usr/bin/python

# coding: utf-8

(27)

Sprawy organizacyjne O języku

Praca z Pythonem

Język Python

Wskazówki

Edytory z podświetleniem składni: vim, gedit, geany, emacs Narzędzia

idle

PythonCard/codeEditor PyCharm

Visual Studio Code

Jupyter

plik.py

#!/usr/bin/python

(28)

-*-Sprawy organizacyjne O języku

Praca z Pythonem

Język Python

Wskazówki

Edytory z podświetleniem składni: vim, gedit, geany, emacs Narzędzia

idle

PythonCard/codeEditor PyCharm

Visual Studio Code

Jupyter

Pliki ”wykonywalne” i polskie litery: plik.py

#!/usr/bin/python

# coding: utf-8

(29)

Plan wykładu

1 Sprawy organizacyjne 2 O języku 3 Praca z Pythonem 4 Język Python Typy proste Kolekcje

(30)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Standardowe typy liczbowe

Typ int

Stałe: 0x123, 0x123456789L, 0o123,0o6789L

Zakres [−sys.maxint − 1, sys.maxint]

Typ float

Stałe: 3.14, 10., .002, .271e1

(31)

Standardowe typy liczbowe

Typ int

Stałe: 0x123, 0x123456789L, 0o123,0o6789L

Zakres [−sys.maxint − 1, sys.maxint] Typ float

(32)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Dodatkowe typy liczbowe

Typ long

1000000000000000000000000000000L Typ complex

Stałe: 1 + 3j , x + 12j , complex (x , 0)

(33)

Konwersja między typami

Użycie nazwy typu jako operatora rzutowania float(1), long(1.0), int(3.14)

Konwersja podczas obliczeń (1.0 ∗ 4)//3 = 1.0

(1.0 ∗ 4)/3 = 1.33333333333333 float(4)/3 = 4/float(3)

(34)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Wyrażenia logiczne

Prawda

True, wartości niepuste Fałsz

0,False,None,[ ], { }

Operatory

and,or,not

==, ! =, 1 < y < 3

(35)

Wyrażenia logiczne

Prawda

True, wartości niepuste Fałsz

0,False,None,[ ], { } Operatory

and,or,not

(36)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Przykłady

Listy: [12,3]

Napisy: ”abc”,’def’,’Zażółć żółtą jaźń’

Krotki: (1, ”jeden”, (1, 2+3j, 0x4))

Słowniki:

htmlColor = {’turquoise’: (64,224,208),

’NavyBlue’ : NavyBlue } Zbiory

(37)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Przypisania

(38)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Przypisania

x = 123

x = xifx > 0 else-x

(39)

Instrukcja warunkowa

ifx > 0:

print(’dodatnia’)

elifx < 0:

print(’ujemna’)

(40)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Instrukcje pętli

Instrukcja while a, b = 0, 1 whileb < 10: print(b) a, b = b, a + b

(41)

Instrukcje pętli

Instrukcja for a = [1,2,3,4] forein a: print(e) print(”koniec”)

(42)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Instrukcje pętli

”Prawdziwa” instrukcja for suma = 0

foriin range(100): suma = suma + i

print(”suma=”, suma)

(43)

Inne instrukcje

Instrukcjebreak icontinue

Instrukcja pustapass while(True): pass

(44)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Procedury i funkcje

deffunkcja(arg1, arg2=1, arg3=[3]):

print(arg1, arg2, arg3)

return4

funkcja(”jeden”, 2)

print(funkcja(1, 2, 3))

(45)

Procedury i funkcje

defkwadrat(x): returnx*x

print(kwadrat(10))

deffunkcja(arg1, arg2=1, arg3=[3]):

print(arg1, arg2, arg3)

return4

funkcja(”jeden”, 2)

(46)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Komentarze

deffun (arg):

”””To jest bardzo wazna funkcja uzywac z wielka ostoznoscia””” # koniec gdy argument pusty

if arg == None: return

returnarg

(47)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Wejście/wyjście

Python 2.*

print(”Hello world”) x = input(”Podaj x: ”) y = input(”Podaj y: ”)

print”x =”, x, ” y =”, y

print(”Hello world”) x = input(”Podaj x: ”) y = input(”Podaj y: ”) print(”x =”, x,” y =”, y)

(48)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Wejście/wyjście

Python 2.*

print(”Hello world”) x = input(”Podaj x: ”) y = input(”Podaj y: ”)

print”x =”, x, ” y =”, y Python 3.0

print(”Hello world”) x = input(”Podaj x: ”) y = input(”Podaj y: ”) print(”x =”, x,” y =”, y)

(49)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Instrukcja print

print(”To jest tekst po wypisaniu”)

print(2, ’dodać’, 2,’daje’, 4, sep=’*’)

print(’2 + 2’, end=”)

(50)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Instrukcja print

print(”To jest tekst po wypisaniu”)

print(2,’dodać’, 2,’daje’, 4)

print(2, ’dodać’, 2,’daje’, 4, sep=’*’)

print(’2 + 2’, end=”)

print(’daje’, 4)

(51)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Instrukcja print

print(”To jest tekst po wypisaniu”)

print(2,’dodać’, 2,’daje’, 4)

(52)

Sprawy organizacyjne O języku Praca z Pythonem Język Python Typy proste Kolekcje

Instrukcje w języku (przypomnienie)

Instrukcja print

print(”To jest tekst po wypisaniu”)

print(2,’dodać’, 2,’daje’, 4)

print(2,’dodać’, 2,’daje’, 4, sep=’*’)

print(’2 + 2’, end=”)

print(’daje’, 4)

Cytaty

Powiązane dokumenty

Ǒ, ŏ – na oznaczenie „a” pochylonego – głoski (w pewnym uproszczeniu rzecz ujmując) na Górnym Śląsku (przemysłowym) oraz na Śląsku Cieszyńskim wymawianej jako

• 65 opinii - do projektów uchwał Rady Miasta Gdańska, których wnioskodawcą był Prezydent Miasta Gdańska, klub radnych PiS i grupa wnioskodawców. • 81

Kierownik: Mgr Maria Jasienowicz - wicedyrektor Jozefa.. Oddział Opracowania Zbiorów ul. Podgrodzie 4, tel.41-14. Kierownik: Mgr Sabina Horyszewska - starszy bibliotekarz

Później był klub na rogu ulic Solnej i Chopina –taki jakiś PZZZ coś tam, już nie pamiętam dokładnie.. Bardzo chętnie nam udostępniali sale,

w pierwszym tygodniu: wejście do IFJ na podstawie listy na portierni, zostały przygotowane umowy – proszę o ich podpisanie (2 egzemplarze).. Osoby uczęszczające wyłącznie na

Metody rejestracji EKG płodu – bezpośrednia, pośrednia Wstępna ocena zapisu EKG płodu.. Ćwiczenia -1

[Tomassen] Zaimek „ów&#34; odmienia się zarówno przez przypadki, jak i rodzaje ( i jeszcze liczby ;P) [Bart] nie jestem ekspertem w dziedzinie naszego języka, ale pisze się

− Run space moze byc dzielony przez wiele overlay (poprzez tylko jedno overlay moze byc w danym momencie umieszczone w Run space)..