Współczesne Narzędzia Obliczeniowe - Python



Podobne dokumenty
Zaawansowany kurs języka Python

3. Biblioteka standardowa Pythona

Kurs rozszerzony języka Python

Python wstęp do programowania dla użytkowników WCSS

Przegląd języka Python. Łukasz Anwajler

Wstęp do Pythona. Janusz Szwabiński. Python w obliczeniach numerycznych (C) 2005 Janusz Szwabiński p.1/36

Programowanie obiektowe

Python! Lekcja 1 podstawy języka, typy danych

Podstawy programowania w Pythonie

Kurs języka Python Wykład 6. Pliki tekstowe Pliki rekordów Pliki CSV Strumienie

Microsoft IT Academy kurs programowania

Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH

Język Python. Język Python 1/35

Python. Wprowadzenie. Jolanta Bachan

KOTLIN. Język programowania dla Androida

Python. Skąd taka nazwa? Kurs systemu UNIX 1

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Plan. krótkie opisy modułów. 1 Uwagi na temat wydajności CPython a. 2 Podstawowe techniki poprawiające wydajność obliczeniową

Wstęp do programowania

Wykresy i interfejsy użytkownika

Programowanie, algorytmy i struktury danych

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Koło Studentów Informatyki Uniwersytetu Wrocławskiego

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

Programista samouk : profesjonalny przewodnik do samodzielnej nauki kodowania / Cory Althoff. Gliwice, copyright Spis treści

Python dla początkujących. Małgorzata Niewiem AGH, GGiOŚ, Katedra Geoinformatyki i Informatyki Stosowanej SATIM Satelitarny Monitoring

JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA. Marcin Lewandowski [ ]

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

1 Podstawy c++ w pigułce.

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Środowisko programisty

Podstawy. Jan Koprowski Politechnika Gdańska, FTiMS Informatyka Stosowana

Wstęp do programowania

2 Przygotował: mgr inż. Maciej Lasota

Wprowadzenie do języka Java

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Kurs rozszerzony języka Python

Język ludzki kod maszynowy

Algorytmy i struktury danych. wykład 1

JAVA?? to proste!! Autor: wojtekb111111

Podstawy Programowania Podstawowa składnia języka C++

Podstawy programowania. Wprowadzenie

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

Język Python (2) Język Python (2) 1/36

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Podstawowe części projektu w Javie

Podstawy programowania w Pythonie

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1)

MATERIAŁY DO ZAJĘĆ II

Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)

Wstęp do programowania

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Programowanie obiektowe

Zajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

Podstawy i języki programowania

Programowanie obiektowe

1 Podstawy c++ w pigułce.

Spis treści. Funkcje. 1 Funkcje 1.1 Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie Zadanie 7

Wstęp do Informatyki i Programowania (kierunek matematyka stosowana)

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

Wykład nr 1 Język Ruby i framework Rails

Podstawy Pythona. Krzysztof Gdawiec. Instytut Informatyki Uniwersytet Śląski

Podstawy programowania w języku C

Operatory cd. Relacyjne: ==!= < > <= >= bool b; int i =10, j =20; dzielenie całkowitych wynik jest całkowity! Łączenie tekstu: + string s = "Ala ma ";

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

JAVA W SUPER EXPRESOWEJ PIGUŁCE

Programowanie RAD Delphi

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Wykład 0 Informacje Podstawowe

Podstawy programowania w Pythonie

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Podstawy programowania: Python. Wprowadzenie. Jolanta Bachan

C++ wprowadzanie zmiennych

Wstęp do programowania

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Wstęp do ruby dla programistów javy

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python


Część 4 życie programu

Tworzenie aplikacji w języku Java

Podstawy programowania skrót z wykładów:

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Języki programowania wysokiego poziomu. PHP cz.2.

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

Języki i metody programowania Java INF302W Wykład 2 (część 1)

Język programowania Scala / Grzegorz Balcerek. Wyd. 2. Poznań, cop Spis treści

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

Listy, krotki, słowniki, funkcje

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, Spis treści

Transkrypt:

Współczesne Narzędzia Obliczeniowe - Python mgr. inż. M. Czubenko Politechnika Gdańska Wydział Elektroniki Telekomunikacji i Informatyki Katedra Systemów Decyzyjnych 7 maja 2012

Podstawy podstaw Co to jest Python? Krótka historia następca języka ABC (1989) nazwa pochodzi od latającego cyrku do wersji 1.2 wydawany przez CWI (Centrum Matematyki i Informatyki w Amsterdamie) na licencji GPL 1.6.1 i od 2.0 Python Software Foundation

Podstawy podstaw Pythona aktualnie Wersje: 2.7.3 - wsparcie wersji 2.x 3.2.3 - aktualna rozwojowa IronPython (.Net) Jython (Java) PyPy (JIT) Stackless Python (c)

Podstawy podstaw Jak instalować Pythona? Systemy Windows - wininstaller Linux - repozytoria MacOS - installer

Podstawy podstaw Pythona IDE Anjuta (unix) eric python IDE (niezależny) geany (niezależny) Boa Constructor Komodo IDE (cross) MonoDevelop (cross) PIDA (cross) Spyder (Win/Linux/OS X) PyDev (eclipse plugin) PsVisual (win) SPE (niezależny) Wing (Win/Linux/OS X)

Podstawy podstaw Co to jest Python? Filozofia wielo-paradygmatowy obiektowy funkcyjny strukturalny typy dynamiczne garbage collector przenośność - interpreter brak enkapsulacji prawie wszystko jest obiektem

Programowanie Ogólnie o programowaniu... Paradygmat strukturalny hierarchiczne dzielenie na bloki omijanie skoków (goto, break, continue, switch) większość języków język stricte strukturalny - Pascal

Programowanie Ogólnie o programowaniu... Paradygmat funkcyjny funkcje to wartości podstawowe nacisk na wartościowanie dla danych wejść funkcja zwraca to samo wyjście oparte o rachunek lambda np. List, Scheme, F#

Programowanie Ogólnie o programowaniu... Paradygmat obiektowy programy to obiekty abstrakcyjność hermetyzacja polimorfizm dziedziczenie

Typy i operacje Przykładowy prosty kod def nwd ( a, b ) : w h i l e b : a, b = b, a%b r e t u r n a

Typy i operacje Typy logiczne bool : True lub False null : None wszystko jest prawdą oprócz: 0, 0.0, 0j;, (), [], { };

Typy i operacje Typy liczbowe całkowite: int (long w Python 2.x) 4591 zmiennoprzecinkowe: float 4.591 zespolone: complex 45.91+4.89j Uwaga typy są automatycznie przedłużane - nie występuje przepełnienie typu; complex zawsze w formacie a+bj np. 2+1j, a nie 2+j;

Typy i operacje Operacje na typach liczbowych zapytanie typu: type() arytmetyczne proste: +; -; *; / arytmetyczne złożone: %; //; ** logiczne : ==;!=; <; >; <=; >= konwersje : int(); complex(); float()

Typy i operacje Napisy - łańcuchy znaków Unicode: str Napis (Py 3.x) unicode u Napis (Py 2.x) ASCII: bytes b Napis (Py 3.x) str Napis (Py 2.x)

Typy i operacje Napisy - łańcuchy znaków Unicode: str (Py 3.x) Napis "Napis" unicode (Py 2.x) u Napis u"napis" ASCII: bytes (Py 3.x) b Napis b"napis" str (Py 2.x) Napis "Napis" Uwaga wielowierszowe w potrójnych lub znaku specjalne Unicode działają \n do momentu r napis wyświetlanie liczb: str(7) repr(9.4)

Typy i operacje Kolekcje lista (zmienna): [4.0, string, True] krotka (niezmienna): (4.0, string, True) zbiór (zmienny): {4.0, string, True} słownik (zmienny): { key1 : 1.0, 3: False}

Instrukcje If i f warunek : b l o k i n s t r u k c j i e l i f warunek : b l o k i n s t r u k c j i e l s e : b l o k i n s t r u k c j i

Instrukcje While w h i l e warunek : b l o k i n s t r u k c j i ( 1 ) continue e l s e : b l o k i n s t r u k c j i ( 2 )

Instrukcje For f o r zmienna i n l i s t a : b l o k i n s t r u k c j i ( 1 ) e l s e : b l o k i n s t r u k c j i ( 2 )

Instrukcje Funkcje def s i l n i a ( n ) : p r i n t n=, n i f n > 1 : r e t u r n n s i l n i a ( n 1) e l s e : p r i n t k o n i e c r e t u r n 1

Instrukcje zaawansowane String - przydatne funkcje n a p i s = Napis k t o r y l e c i s o b i e d a l e j t a b l i c a = n a p i s. s p l i t ( ) n a p i s 2 = Poczatek n a p i s u. j o i n ( i )

Instrukcje zaawansowane String - formatowanie Formatowanie krotki napisów n a p i s = Napis k t o r y l e c i n a p i s 2 = s o b i e d a l e j %s=%s % ( n a p i s, n a p i s 2 ) Standardowe wypisanie n a p i s = Napis k t o r y l e c i n a p i s 2 = s o b i e d a l e j i = 16 p r i n t ( n a p i s + n a p i s 2 + s t r ( i ) ) p r i n t ( 2+1=,2+1) p r i n t ( i h 5)

Instrukcje zaawansowane Standardowe wejście p r i n t ( H a l t! ) u s e r i n p u t = i n p u t ( Who Goes t h e r e? ) p r i n t ( You may pass, + u s e r i n p u t )

Instrukcje zaawansowane Operacje na listach l i s t a = [ b l e, 667, f u j ] l i s t a. i n d e x ( b l e ) l i s t a [ 2 ] l i s t a [ 1 : 2 ] l i s t a. i n s t e r t ( 1, abc ) l i s t a. append ( s t h ) l i s t a. e x t e n d ( [ cde, 5 5 6 ] ) l i s t a. r e v e r s e ( ) l i s t a. s o r t ( ) l e n ( l i s t a )

Instrukcje zaawansowane Operacje na listach cd... l i s t a = [ b l e, 667, f u j,778, p s i k ] l i s t a [ 1] l i s t a [ 0 : 4 ] l i s t a [0: 1] l i s t a [ 1 : ] l i s t a [ : 2 ] l i s t a. append ( [ cde, 5 5 6 ] ) l i s t a. e x t e n d ( [ cde, 5 5 6 ] )

Instrukcje zaawansowane Operacje na listach cd... l i s t a = [ b l e, 667, f u j,778, p s i k ] b l e i n l i s t a l i s t a. remove ( b l e ) l i s t a. pop ( ) l i s t a 2 = [ p o s z e d l, s o b i e, 5 54] l i s t a 3 = l i s t a +l i s t a 2 l i s t a 3+= l i s t a 2 l i s t a 3 = [ que, qua ] 2

Instrukcje zaawansowane Operacje na krotkach k r o t k a = ( b l e, 667, f u j,778, p s i k ) k r o t k a. i n d e x ( f u j ) f u j i n k r o t k a Po co są krotki? do iteracji (szybsze niż listy) zabezpieczenie przed zapisem jako klucz w słowniku (w przeciwieństwie do list) do formatowania tekstu

Instrukcje zaawansowane Operacje na słownikach s l o w n i k = { b l e : f u j, p s i k : 6 6 7, f u j : b l e } s l o w n i k [ b l e ] s l o w n i k [ p s i k ]= p o s z e d l d e l s l o w n i k [ p s i k ] s l o w n i k. c l e a r ( ) s l o w n i k. k e y s ( ) s l o w n i k. v a l u e s ( ) s l o w n i k. i t e m s ( )

Instrukcje zaawansowane Zmienne, trochę ciekawostek ( x, y, z )=(1,2,3) range ( 1 3 ) ( NIE,MOZE,TAK)= range ( 3 )

Instrukcje zaawansowane Wyrażenia listowe l i s t a = [ 1, 2, 5, 9 ] [ e l 2 f o r e l i n l i s t a ]

Instrukcje zaawansowane Filtracja list l i s t = [ a, p a r s z y w i e c, dobry, z l y, b r z y d k i, d o l a r, w i e [ e l f o r e l i n l i s t i f l e n ( e l ) >0] [ e l f o r e l i n l i s t i f e l!= b r z y d k i ] [ e l f o r e l i n l i s t i f l i s t. count ( e l )==0]

Dalsze elementy Pythona Wyjątki t r y : k=7 p r i n t ( k ) k+ cos except : p r i n t ( w y j a t e k ) e l s e : f i n a l l y :

Dalsze elementy Pythona Wyjątki - łapanie except T: except (T1, T2 ) : except T as v : r a i s e

Dalsze elementy Pythona Wyjątki - typy A s s e r t i o n E r r o r EOFError I O E r r o r S y n t a x E r r o r I m p o r t E r r o r KeyError F l o a t i n P o i n t E r r o r I n d e x E r r o r TypeError V a l u e E r r o r Z e r o D i v i s i o n E r r o r

Dalsze elementy Pythona Wejście - wyjście i n p u t ( ) s y s. s t d i n p r i n t ( ) s y s. s t d o u t

Dalsze elementy Pythona Moduły from MODUL import KLASA from s y s import s t d i n

Dalsze elementy Pythona Pliki open ( ) r e a d ( ) r e a d l i n e ( ) r e a d l i n e s ( ) w r i t e ( ) c l o s e ( )

Dalsze elementy Pythona Przydatne polecenia Kodowanie Pythona # c o d i n g : u t f 8 ord ( a ) c h r ( 9 7 ) ord ( u a ) u n i c h r (378) t y p e (234) l i s t = [ ] d i r ( l i s t ) g e t a t t r ( l i s t, pop )

Dalsze elementy Pythona Przydatne polecenia cd... enumerate ( l i s t a ) z i p ( l i s t 1, l i s t 2,... )

Dalsze elementy Pythona Definicja funkcji def nazwa ( a r g s ) : Opis f u n k c j i w p l i k u nazwa. d o c c i a l o ;

Dalsze elementy Pythona Troszkę o funkcjach Funkcja w Pythonie brak typów argumentów niemożliwość przeciążania funkcji standardowe określanie wartości nazwa=wartosc * - rozszerzenie ostatniego argumentu do postaci tablicy **- rozszerzenie ostatniego argumentu do postaci słownika return x

Dalsze elementy Pythona Funkcje anonimowe g = lambda x : g ( 3 ) x 2

Dalsze elementy Pythona Moduł import m m. f u n k c j a from m import ; f u n k c j a

Charakterystyka ponad 200 modułów pełna lista: http://docs.python.org/py3k/py-modindex.html

Charakterystyka Najpopularniejsze moduły: time sys os math random pickle urllib re cgi socket

Systemowe Moduł time gmtime ( 0 ) l o c a l t i m e ( ) # j a k o k r o t k a time ( ) # w sekundach c l o c k ( ) # zwraca c z a s p r o c e s o r a ctime ( ) # k o n w e r s j a sekund na s t r i n g a mktime ( ) # k r o t k a na sekundy s l e e p ( ) s t r p t i m e ( 30 Nov 00, %d %b %y ) s t r f t i m e ( %a, %d %b %Y %H:%M:%S +0000, gmtime ( ) )

Systemowe Moduł sys a r g v # argumenty z l i n i i p o l e c e n e x i t ( r e s u l t ) # konczy program path # l i s t a katalogow p o d c z e p i o n y c h do Py v e r s i o n s t d i n s t d o u t s t d e r r g e t s i z e o f ( o b j e c t ) # w b a j t a c h p l a t f o r m g e t w i n d o w s v e r s i o n ( ) # t y l k o w Windzie modules # zaladowane moduly

Systemowe Moduł locale g e t l o c a l e ( ) g e t p r e f f e r e d e n c o d i n g ( l o c a l e ) s e t l o c a l e ( ) r e s e t l o c a l e ( )

Systemowe Moduł os identyfikacja e n v i r o n # zmienne systemowe e n v i r o n [ HOME ] g e t g i d ( ) g e t g r o u p s ( ) g e t e u i d ( ) g e t l o g i n ( ) g e t p i d ( ) # a n a l o g i c z n i e s e t uname ( )

Systemowe Moduł os pliki open ( p l i k ) # o t w i e r a p l i k c l o s e ( p l i k ) # zamyka p l i k r o z n e od p o l e c e n os. # P o l e c e n i a os. open ( p l i k, f l a g i ) # zwraca f i l e d e s c r i p t o r c l o s e ( f d ) c l o s e r a n g e ( fd min, fd max ) d e v i c e e n c o d i n g ( f d ) dup ( f d ) fchmod ( fd, mode ) fchown ( fd, uid, g i d ) f s t a t ( f d ) f s y n c ( f d ) # p i s a n i e po p l i k u r e a d ( fd, b y t e s ) w r i t e ( fd, s t r )

Systemowe Moduł os katalogi c h d i r ( path ) f c h d i r ( f d ) getcwd ( ) # c u r r e n t working d i r e c t o r y chmod ( paty, mode ) chown ( path, uid, g i d ) mkdev ( major, minor ) mkdir ( ) remove ( path ) rename ( s r c, d s t ) r m d i r ( path ) s t a t ( path )

Systemowe Moduł os procesy e x e c l ( path, arg0,... ) e x e c v ( path, a r g s ) # p r o c e s w m i e j s c u obecnego spawnl ( mode, path, arg0,... ) spawnv ( mode, path, a r t g s ) # nowy p r o c e s u e x i t ( n ) f o r k ( ) k i l l ( pid, s i g ) system ( cammand ) t i m e s ( ) # zwraca p i e c r o z n y c h czasow w a i t ( )

Math Moduł array lista zajmująca mniej pamięci dopuszczalne typy: b, B (char), u, h, H (short), i, I, l, L, f, d a r r a y ( l, [ 1, 2, 3, 4 ] ) i t e m s i z e append ( x ) e x t e n d ( i e t a r b l e ) count ( x ) # z l i c z a i l o s c w y s t a p i e n i n d e x ( x ) i n s e r t ( i, x ) pop ( [ i ] ) remove ( x ) r e v e r s e ( ) to ( ) ; from ( ) # bytes, f i l e, l i s t, s t r i n g, u n i c o d e

Math Moduł math c e i l ( x ) c o p y s i g n ( x, y ) # from y to x f a b s ( x ) f l o o d ( x ) fmod ( x, y ) # modulo z b i b l i o t e k i C f a c t o r i a l ( x ) f r e x p ( x ) # zamiana na format w y k l a d n i c z y fsum ( i t e r a b l e ) suma l i c z b ## d l a r o z r o z n i e n i a od sum ( i t ) co zwraca p o l a c z o n a i s i n f i n i t e ( x ) i s n a n ( x ) l d e x p ( x, i ) zwraca x 2ˆ i

Math Moduł math exp ( x ) expm1 ( x ) # zwraca ( e ˆx) 1 l o g ( x, base ) l o g 1 p ( x ) # l n ( x+1) l o g 1 0 ( x ) pow ( x, y ) s q r t ( x )

Math Moduł math d e g r e e s ( x ) r a d i a n s ( x ) gamma( x ) lgamma ( x ) # zwraca l n z gamma( x )

Math Moduł random s e e d ( [ x ] ) r a n d r a n g e ( s t a r t, stop, s t e p ) r a n d i n t ( a, b ) c h o i c e ( seq ) s h u f f l e ( seq ) sample ( p o p u l a t i o n, k ) random ( ) b a t a v a r i a t e ( alpha, betha ) e x p o v a r i a t e ( lambd ) gammavariate ( alpha, beta ) g a u s s (mu, sigma ) #s z y b s z e n o r m a l v a r i a t e (mu, sigma ) p a r e t o v a r i a t e ( a l p h a )

Math Moduł cmath phase (com ) p o l a r (com ) r e c t ( r, p h i ) exp (com) l o g (com) l o g 1 0 ( com) s q r t (com)

Math Moduł fractions F r a c t i o n (num, denum ) F r a c t i o n ( f l o a t ) F r a c t i o n ( dec ) F r a c t i o n ( s t r ) l i m i t d e n o m i n a t o r (max )

Parsery Parsery plików xml html configparser argparser

Parsery Bazy danych dbm sqlite3

Parsery Formatowanie stringów string re

Parsery Moduł string - constants a s c i i l e t t e r s a s c i i l o w e r c a s e a s c i i u p p e r c a s e d i g i t s h e x d i g i t s w h i t e s p a c e

Parsery Moduł string - Formatter format ( s t r i n g, args, kwargs ) r e p l a c e m e n t f i e l d ::= { [ f i e l d n a m e ] [! c o n v e r s i o n ] [ : f o r m a t s p e c ] } f i e l d n a m e ::= arg name (. a t t r i b u t e n a m e [ e l e m e n t i n d e x ] ) arg name ::= [ i d e n t i f i e r i n t e g e r ] a t t r i b u t e n a m e ::= i d e n t i f i e r e l e m e n t i n d e x ::= i n t e g e r i n d e x s t r i n g i n d e x s t r i n g ::= <any s o u r c e c h a r a c t e r except ] > + c o n v e r s i o n ::= r s a f o r m a t s p e c ::= <d e s c r i b e d i n the n e x t s e c t i o n >

Parsery Moduł string - Formatter mini language f o r m a t s p e c ::= [ [ f i l l ] a l i g n ] [ s i g n ] [#] [ 0 ] [ width ] [, ]... [. p r e c i s i o n ] [ t y p e ] f i l l ::= <a c h a r a c t e r o t h e r than } > a l i g n ::= < > = ˆ s i g n ::= + width ::= i n t e g e r p r e c i s i o n ::= i n t e g e r t y p e ::= b c d e E f F.. g G n o s x X %

Parsery Moduł string - Formatter przykłady >>> {0}, {1}, {2}. format ( a, b, c ) a, b, c >>> {}, {}, {}. format ( a, b, c ) # 3.1+ o n l y a, b, c >>> {2}, {1}, {0}. format ( a, b, c ) c, b, a >>> {2}, {1}, {0}. format ( abc ) c, b, a >>> {0}{1}{0}. format ( abra, cad ) a b r a c a d a b r a >>> r e p r ( ) shows q u o t e s : {! r } ; s t r ( ) doesn t : {! s }.... format ( t e s t 1, t e s t 2 ) r e p r ( ) shows q u o t e s : t e s t 1 ; s t r ( ) doesn t : t e s t 2

Parsery Moduł string - Formatter przykłady >>> width = 5 >>> f o r num i n range ( 5, 1 2 ) :... f o r base i n dxob :... p r i n t ( { 0 : { width }{ base }}. format (num, base=base,... p r i n t ( )

Inne Moduły sieciowe ebbrowser http urllib telnetlib ssl socket smtpd, smtplib, poplib, mailbox, imaplib, email ftplib cgi, cgitb

Inne Moduły narzędziowe Pakery zlib, gzip bz2 zipfile tarfile

Inne Moduły narzędziowe Programowanie współbieżne threading multiprocessing subprocess

Inne Moduły narzędziowe Różne wave unittest timeit pomiar czasu wykonywania programów curses, tkinter gui