123123123123123123123123123123123123123124
Wykład 1
Ewentualne braki należy opanować w samodzielnym zakresie.
W razie problemów zapraszam na konsultacje.
Poprawna wymowa: pajton.
Język Python stworzył we wczesnych latach 90. Guido van Rossum – jako następcę języka ABC.
Nazwa języka pochodzi od serialu komediowego emitowanego w latach siedemdziesiątych przez BBC – „Monty Python’s Flying Circus” (Latający cyrk Monty Pythona). Projektant, będąc fanem serialu i poszukując nazwy krótkiej, unikalnej i nieco tajemniczej, uznał tę za świetną.
print
Python 2:
print 'Hello, World!'
print('Hello, World!')
print "text", ; print 'print more text on the same line'
Python 3
Dzielenie zmiennych typu int
Python 2:
print '3 / 2 =', 3 / 2
print '3 // 2 =', 3 // 2
print '3 / 2.0 =', 3 / 2.0
print '3 // 2.0 =', 3 // 2.0
Python 3
print('3 / 2 =', 3 / 2)
print('3 // 2 =', 3 // 2)
print('3 / 2.0 =', 3 / 2.0)
print('3 // 2.0 =', 3 // 2.0)
Warto doczytać np. tutaj.
Sprawdzenie wersji na Ubuntu 18.04:
Ręczna instalacja:
Znaki odstępu:
Puste linie:
Kodowanie:
Stringi:
Jak sprawdzać styl PEP8?
Różnice - Editor/Code Style/Python
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
...
PL - https://pl.python.org/forum/index.php?topic=392.msg1844#msg1844
Domyślnie dziesiętny. Więcej za kilka zajęć przy algorytmach liczbowych.
<class 'int'>
- wszystko jest obiektem
Uwaga: wyrażenie
skutkuje błędem w większości wypadków.
Obecnie odchodzi się od określenia “tablica znaków”
=
przypisuje prawą stronę do lewej (!), często mylony z operatorem logicznym równa się ==
objects
- to co ma być wyświetlonesep
- separator, domyślnie znak spacjiend
- co co ma być wyświetlone na końcu, domyślnie znak końca liniifile
- określa gdzie mają być objects
wyświetlone, domyślnie sys.stdout
(domyślny ekran)flush
- określa czy “wyjście” ma być buforowane przed przekazaniem do file
, domyślne False
\t
- przesunięcie do następnego “tab”=8 spacji
Formatowanie napisów będzie później.
Operator | Opis | Składnia |
---|---|---|
+ | Dodawanie | x + y |
– | Odejmowanie | x – y |
* | Mnożenie | x * y |
/ | Dzielenie | x / y |
// | Dzielenie całkowite | x // y |
% | Dzielenie modulo | x % y |
** | Potęgowanie | x ** y |
Daje info: ZeroDivisionError: division by zero
.
Lista zawiera wybrane operacje.
Inna nazwa to złożone operatory przypisania.
Operator | Zapis | Dłuższa wersja |
---|---|---|
+= | x += 5 | x = x + 5 |
-= | x -= 5 | x = x - 5 |
*= | x *= 5 | x = x * 5 |
/= | x /= 5 | x = x / 5 |
%= | x %= 5 | x = x % 5 |
//= | x //= 5 | x = x // 5 |
**= | x **= 5 | x = x ** 5 |
Operator | Znaczenie | Przykład |
---|---|---|
> | Większe niż | x > y |
< | Mniejsze niż | x < y |
== | Równe | x == y |
!= | Nie równa się | x != y |
>= | Większe lub równe | x >= y |
<= | Mniejsze lub równe | x <= y |
Operator | Znaczenie | Przykład |
---|---|---|
and | i | x and y |
or | lub | x or y |
not | negacja | not x |
Operator | Znaczenie | Przykład |
---|---|---|
& |
i - logiczne | x & y |
| |
lub - logiczne | x | y |
^ |
albo - logiczne | x ^ y |
~ |
negacja - logiczne | ~x |
<< |
przesunięcie w lewo | x << y |
>> |
przesunięcie w prawo | x >> y |
Operator &
x |
100 |
4 |
y |
101 |
5 |
x&y |
100 |
4 |
Operator |
x |
100 |
4 |
y |
101 |
5 |
x|y |
101 |
5 |
Operator ^
x |
100 |
4 |
y |
101 |
5 |
x^y |
001 |
1 |
Operator ~
-(x+1)
x |
100 |
4 |
~x |
? | -5 |
Operator <<
a<<b
- równoważnie a*pow(2,b)
x |
0011 |
3 |
x<<2 |
1100 |
12 |
Operator >>
a>>b
- równoważnie a//pow(2,b)
x |
1101 |
13 |
x>>2 |
0011 |
3 |
Składnia