Більше типів богу даних!
Типи даних мови Python
Основи програмування мовою Python, лекція 6 Київ, 2015
Intцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Типи даних Python
числові
Intцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Типи даних Python
числові
} 32 біти =4 байти
= 4 294 967 296 комбінацій
тобто числа в діапазоні
-2 147 483 647 ... 0 ... 2 147 483 647
232
2014 => 111 11011110 => 210 + 29 + 28 + 27 + 26 + 24 + 23 + 22 + 21
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 1
1 1 0 1 1 1 1 0
2014
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Типи даних Python
числові
} 32 біти =4 байти
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
_
2 147 483 647
+ 1= 2 147 483 648
= 0 (або -2 147 483 648)
?прогнозуючи такі переповнення,
Python перетворює цілі числа в
тип Long, який реалізує "довгу
арифметику" і може зберігати
скільки завгодно великі цілі числа
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Типи даних Python
числові 1234.5 = 1.2345 х 103
1234.5 = 1.20556640625 х 210
Floating point
мантиса
експонента
< 21 ≤
≤ 1023-1022 ≤
формат представлення чисел із плаваючою крапкою (комою)
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Типи даних Python
числові 1234.5 = 1.2345 х 103
1234.5 = 1.20556640625 х 210
мантиса
експонента
< 21 ≤
≤ 1023-1022 ≤
1/8 = 0.125 = 1.25 х 10-1 = 1.0 х 2-3
1/10 = 0.1 = 1.0 х 10-1 = 1.999999... х 2-1
так як в основі фізичного збереження чисел лежать ступені двійки,
не всі числа можуть бути точно представлені – має місце округлення
Типи даних Python
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Boolлогічний тип
True, False
A B A and B
F F F
F T F
T F F
T T T
A B A or B
F F F
F T T
T F T
T T T
A not A
F T
T F
sing('lalala') and go()
needStop or (a>0 and b>0)
not looser and (money> 100)
date == 13 or day=='friday'
a>0 and b>0
piece = not war
0, 0.0, "", None, [] → False → 0, "False"
числові
False
True
все інше → True → 1, "True"
Типи даних Python
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Strрядки
'Hi!', "Python"
Boolлогічний тип
True, False
'Yesterday,'
"All my troubles seemed so far away"
"Now it looks as though they're here to stay"
'Oh, I believe in "yesterday"'
"""Suddenly,I'm not half the man I used to be"""
* – умовно вважатимемо простими ;-)
*
числові
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Strрядки*
'Hi!', "Python"
Boolлогічний тип
True, False
Типи даних Python
незмінювані
* – умовно вважатимемо простими ;-)
a
a = 1
a = a + 1
1 2a
числові
ви не можете змінити дані таких типів –
лише створити нове значення і
використовувати його замість старого
(часто ви навіть не помітите,
що інтерпретатор робить це постійно)
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Strрядки*
'Hi!', "Python"
Boolлогічний тип
True, False
Listсписки
[1, 2.0, 'three']
складні
Типи даних Python
послідовностінезмінювані
числові
Listсписки
[1, 2.0, 'three']
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Boolлогічний тип
True, False
складні
Типи даних Python
послідовності
числові
незмінюванінезмінюваніпослідовності
Strрядки*
'Hi!', "Python"
Listсписки
[1, 2.0, 'three']
Tupleкортежи
(1, 2.0, 'three')
такий самий, як list, але незмінюваний
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Strрядки*
'Hi!', "Python"
Boolлогічний тип
True, False
Listсписки
[1, 2.0, 'three']
Tupleкортежи
(1, 2.0, 'three')
Dictсловники
{1:'one', 2:'two'}
складні
Типи даних Python
числові
послідовностінезмінювані
Dict значить "DICTIONARY"!складається з пар "ключ - значення"
Int, Longцілі числа
-10, 0, 25
прості
Floatдійсні числа
-10.0, 0.0, 25.0
Strрядки*
'Hi!', "Python"
Boolлогічний тип
True, False
Listсписки
[1, 2.0, 'three']
Tupleкортежи
(1, 2.0, 'three')
Dictсловники
{1:'one', 2:'two'}
Objectоб'єкти
<Person>
складні
Типи даних Python
числові
послідовностінезмінювані
* – умовно вважатимемо простими ;-)
Дякую за увагу!Над випуском працювали:
• Павлюченко Нікіта Сергійович
• Панібрат Марія Олексіївна
НТУУ "КПІ", 2015
Top Related