All language subtitles for 1. Quick overview

af Afrikaans
ak Akan
sq Albanian Download
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bem Bemba
bn Bengali
bh Bihari
bs Bosnian
br Breton
bg Bulgarian
km Cambodian
ca Catalan
ceb Cebuano
chr Cherokee
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
ee Ewe
fo Faroese
tl Filipino
fi Finnish
fr French
fy Frisian
gaa Ga
gl Galician
ka Georgian
de German
el Greek
gn Guarani
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian
is Icelandic
ig Igbo
id Indonesian
ia Interlingua
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
rw Kinyarwanda
rn Kirundi
kg Kongo
ko Korean
kri Krio (Sierra Leone)
ku Kurdish
ckb Kurdish (Soranî)
ky Kyrgyz
lo Laothian
la Latin
lv Latvian
ln Lingala
lt Lithuanian
loz Lozi
lg Luganda
ach Luo
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mfe Mauritian Creole
mo Moldavian
mn Mongolian
my Myanmar (Burmese)
sr-ME Montenegrin
ne Nepali
pcm Nigerian Pidgin
nso Northern Sotho
no Norwegian
nn Norwegian (Nynorsk)
oc Occitan
or Oriya
om Oromo
ps Pashto
fa Persian
pl Polish
pt-BR Portuguese (Brazil)
pt Portuguese (Portugal)
pa Punjabi
qu Quechua
ro Romanian
rm Romansh
nyn Runyakitara
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
sh Serbo-Croatian
st Sesotho
tn Setswana
crs Seychellois Creole
sn Shona
sd Sindhi
si Sinhalese
sk Slovak
sl Slovenian
so Somali
es Spanish
es-419 Spanish (Latin American)
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
tt Tatar
te Telugu
th Thai
ti Tigrinya
to Tonga
lua Tshiluba
tum Tumbuka
tr Turkish
tk Turkmen
tw Twi
ug Uighur
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
wo Wolof
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 0 00:00:00,000 --> 00:00:01,080 Hello everyone! 1 00:00:01,440 --> 00:00:01,840 Recently, 2 00:00:02,300 --> 00:00:06,300 I decided to relearn the Python core from EpoM. 3 00:00:06,500 --> 00:00:09,260 It's a part of data software engineering course. 4 00:00:09,600 --> 00:00:16,880 Yeah, I have go through all the models here and I decided to share my experience and also 5 00:00:16,880 --> 00:00:21,080 explain the most of the concepts like human being. 6 00:00:21,480 --> 00:00:22,180 Let's 7 00:00:22,720 --> 00:00:26,000 get started from the lesson one introduction. 8 00:00:26,680 --> 00:00:27,800 Okay, firstly, 9 00:00:28,260 --> 00:00:30,180 welcome to Python Core. 10 00:00:30,440 --> 00:00:31,860 Yep, let's get started. 11 00:00:32,320 --> 00:00:33,460 We will learn in this 12 00:00:33,460 --> 00:00:36,040 module about the Python, 13 00:00:36,780 --> 00:00:38,200 about development environment, 14 00:00:38,860 --> 00:00:40,780 its data types, functions, 15 00:00:41,220 --> 00:00:42,580 models and pickades. 16 00:00:42,900 --> 00:00:44,800 And last but not least, 17 00:00:45,420 --> 00:00:48,040 the object oriented programming in Python, 18 00:00:48,380 --> 00:00:49,360 how it looks like. 19 00:00:49,740 --> 00:00:50,700 Let's move on. 20 00:00:51,060 --> 00:00:51,260 Okay, 21 00:00:51,660 --> 00:00:52,040 introduction. 22 00:00:52,640 --> 00:00:56,620 Why you should choose Python or you should learn the Python? 23 00:00:57,000 --> 00:00:57,300 Actually, 24 00:00:57,620 --> 00:00:58,960 Python is beginner friendly, 25 00:00:59,320 --> 00:01:00,020 multi-purpose, 26 00:01:00,680 --> 00:01:01,940 high demand nowadays, 27 00:01:02,320 --> 00:01:04,340 and it also has a wide community. 28 00:01:04,660 --> 00:01:09,800 Python is one of the most fast-growing programming language. 29 00:01:10,040 --> 00:01:12,440 It's just everywhere from web programming 30 00:01:13,020 --> 00:01:13,920 to AI, 31 00:01:14,480 --> 00:01:15,680 artificial intelligence. 32 00:01:15,960 --> 00:01:21,220 In this module, we will learn about types of programming languages, introduction to Python, 33 00:01:21,700 --> 00:01:23,000 just we will interact, 34 00:01:23,300 --> 00:01:25,120 we will code some problems. 35 00:01:25,620 --> 00:01:25,820 Okay, 36 00:01:26,360 --> 00:01:28,160 types of programming language. 37 00:01:28,540 --> 00:01:29,280 What we have? 38 00:01:29,460 --> 00:01:30,800 There is a table we have, 39 00:01:31,120 --> 00:01:33,360 you can see the its ranking, 40 00:01:33,920 --> 00:01:34,860 Python as a first, 41 00:01:35,280 --> 00:01:39,600 according to TIOP index programming language. 42 00:01:40,120 --> 00:01:42,620 It's divided into five by purpose, 43 00:01:43,420 --> 00:01:46,700 by level of abstraction, programming paradigm, 44 00:01:47,100 --> 00:01:49,680 implement action and typing strategy. 45 00:01:50,060 --> 00:01:51,220 Let's talk about the purpose. 46 00:01:51,940 --> 00:01:56,220 We have general purpose and special programming language. 47 00:01:56,460 --> 00:01:58,300 For general, we can say 48 00:01:58,640 --> 00:01:59,080 Python, 49 00:01:59,720 --> 00:02:00,080 Rust, 50 00:02:00,420 --> 00:02:00,780 Java, 51 00:02:01,160 --> 00:02:01,400 Lease, 52 00:02:01,720 --> 00:02:03,580 it's used for various tasks. 53 00:02:03,880 --> 00:02:05,280 For special programming language, 54 00:02:05,600 --> 00:02:08,020 it's oriented for solving the specific task, 55 00:02:08,480 --> 00:02:09,340 like SQL, 56 00:02:09,940 --> 00:02:13,560 for database or MAPL for mathematical computations. 57 00:02:13,860 --> 00:02:15,720 And we have level of abstraction, 58 00:02:15,940 --> 00:02:19,260 low level languages or high level language. 59 00:02:19,360 --> 00:02:20,780 For low-level language, 60 00:02:20,940 --> 00:02:22,840 machine code or assembler. 61 00:02:23,180 --> 00:02:24,300 For high-level language, 62 00:02:24,720 --> 00:02:25,500 it's Python, 63 00:02:26,020 --> 00:02:27,500 Java, Ruby and JavaScript. 64 00:02:27,820 --> 00:02:27,940 Why? 65 00:02:28,240 --> 00:02:33,380 Because it sends indirect calls to the operating system using abstraction level. 66 00:02:33,760 --> 00:02:36,600 Low-level language will send the direct calls. 67 00:02:36,840 --> 00:02:37,840 Difference is this. 68 00:02:38,160 --> 00:02:41,560 Direct calls, but high-level language is indirect calls. 69 00:02:41,820 --> 00:02:46,160 And it uses the compiler or interpreter to translate them to 70 00:02:46,160 --> 00:02:48,160 operating system to machine code. 71 00:02:48,380 --> 00:02:50,360 Okay, next, programming paradigm. 72 00:02:50,660 --> 00:02:52,080 We have declarative 73 00:02:52,500 --> 00:02:55,540 paradigm like HTML or SQL. 74 00:02:56,000 --> 00:03:00,200 Like it says, you don't need to know about how browser renders the HTML. 75 00:03:00,740 --> 00:03:03,720 You just describe what you want to see. 76 00:03:03,940 --> 00:03:04,760 You have the results. 77 00:03:05,060 --> 00:03:05,920 Same with SQL. 78 00:03:06,180 --> 00:03:07,300 For imperative paradigm, 79 00:03:07,680 --> 00:03:08,060 Python, 80 00:03:08,660 --> 00:03:09,040 Java, 81 00:03:09,480 --> 00:03:13,060 the main goal of imperative programming is to describe the process, 82 00:03:13,400 --> 00:03:14,320 functional programming. 83 00:03:14,660 --> 00:03:17,960 We can say part of declarative programming, 84 00:03:18,220 --> 00:03:20,520 which has a chain of function calls. 85 00:03:20,640 --> 00:03:24,840 Like you can see in the image program function, function, 86 00:03:25,280 --> 00:03:28,540 function, result will go, move on, move on, move on, 87 00:03:28,920 --> 00:03:29,120 like this. 88 00:03:29,280 --> 00:03:33,280 It has some advantages and disadvantages like recursion deeps. 89 00:03:33,640 --> 00:03:34,700 As you can see there, 90 00:03:35,100 --> 00:03:38,620 it will continue and go deeper and deeper. 91 00:03:38,980 --> 00:03:39,860 And for advantages, 92 00:03:40,200 --> 00:03:42,540 I can highlight it's easier to understand. 93 00:03:42,860 --> 00:03:44,420 Object-oriented paradigm. 94 00:03:44,760 --> 00:03:47,300 Like here, you can see in the image 95 00:03:47,480 --> 00:03:55,060 and class car and objects like BMW and Mercedes inherited from the class car. 96 00:03:55,420 --> 00:03:57,060 Because this is the car and this is the car. 97 00:03:57,320 --> 00:03:58,920 Just the model is 98 00:03:59,580 --> 00:03:59,980 different. 99 00:04:00,510 --> 00:04:01,160 Advantages, 100 00:04:01,600 --> 00:04:02,940 it's parallel development. 101 00:04:03,420 --> 00:04:07,920 Each team member can work independently with their own model or classes. 102 00:04:08,340 --> 00:04:09,500 And also it's scalable 103 00:04:09,500 --> 00:04:11,000 and maintainable. 104 00:04:11,180 --> 00:04:11,880 For disadvantages, 105 00:04:12,740 --> 00:04:14,280 it can be inefficient. 106 00:04:14,600 --> 00:04:16,940 Using OOP can increase CPU usage. 107 00:04:17,320 --> 00:04:20,580 And also unnecessary class that can lead to duplications. 108 00:04:20,900 --> 00:04:22,060 Let's move on. 109 00:04:22,400 --> 00:04:23,680 Procedural paradigm. 110 00:04:24,100 --> 00:04:26,120 It's also part of imperative programming. 111 00:04:26,500 --> 00:04:28,580 Advantages is easy to reuse. 112 00:04:28,880 --> 00:04:30,900 Also it can seem as less memory. 113 00:04:31,220 --> 00:04:32,180 But in the disadvantages, 114 00:04:32,860 --> 00:04:35,100 we can see there is no data production. 115 00:04:35,600 --> 00:04:37,780 It's also difficult to handle errors. 116 00:04:38,020 --> 00:04:41,900 And example Pascal or other programming language. 117 00:04:42,320 --> 00:04:43,400 And for implementation, 118 00:04:43,700 --> 00:04:44,760 we have two types. 119 00:04:45,060 --> 00:04:46,720 Compilot and interpreted. 120 00:04:47,260 --> 00:04:48,440 For Compilot language, 121 00:04:49,060 --> 00:04:51,420 we can say it's C, 122 00:04:51,740 --> 00:04:53,100 go programming language. 123 00:04:53,440 --> 00:04:55,980 Because it will translate the source code from 124 00:04:55,980 --> 00:04:57,340 high-level programming language, 125 00:04:57,440 --> 00:04:58,540 lower-level language. 126 00:04:58,720 --> 00:05:00,640 And it leads to faster execution. 127 00:05:00,980 --> 00:05:03,320 Because as you can see in the image, language, 128 00:05:03,720 --> 00:05:06,760 it's compiling to machine code and it's ready 129 00:05:06,760 --> 00:05:07,320 to run. 130 00:05:07,500 --> 00:05:08,640 But in interpreter, 131 00:05:09,060 --> 00:05:10,020 there will be interpreter. 132 00:05:10,720 --> 00:05:14,420 It will transform the source code to byte code. 133 00:05:14,660 --> 00:05:17,000 And then it will be executed by interpreter. 134 00:05:17,360 --> 00:05:18,980 As you can see in the image, 135 00:05:19,240 --> 00:05:21,080 this advantage is slower execution. 136 00:05:21,340 --> 00:05:24,960 It takes much time compared to compiled language. 137 00:05:25,220 --> 00:05:26,620 Okay, we have typing strategy. 138 00:05:27,080 --> 00:05:27,540 Like dynamic, 139 00:05:27,900 --> 00:05:28,160 strong, 140 00:05:28,660 --> 00:05:28,980 static, 141 00:05:29,500 --> 00:05:29,780 weak. 142 00:05:30,040 --> 00:05:34,560 Dynamic code, we can see everything will be checked at runtime. 143 00:05:34,920 --> 00:05:39,900 You don't need to declare each data type in the beginning. 144 00:05:40,200 --> 00:05:41,260 Like in the Python. 145 00:05:41,620 --> 00:05:44,240 There's no, you don't need to declare like integer 146 00:05:44,240 --> 00:05:45,980 and equal to something. 147 00:05:46,660 --> 00:05:47,340 In the strong, 148 00:05:47,660 --> 00:05:49,600 strong type language will permit 149 00:05:49,600 --> 00:05:51,800 the mixing types, like in the expression. 150 00:05:52,280 --> 00:05:54,800 And they don't apply different implicit cast, 151 00:05:55,260 --> 00:05:56,260 like C sharp. 152 00:05:57,460 --> 00:05:58,400 For static, 153 00:05:59,440 --> 00:06:02,340 you can, you should always declare the data type. 154 00:06:02,940 --> 00:06:06,720 Like in the C++ or Java. 155 00:06:07,000 --> 00:06:09,020 And there is also weak typing language 156 00:06:09,560 --> 00:06:11,620 that implicit cast of types. 157 00:06:12,040 --> 00:06:14,520 As a result, the output of some expression may be 158 00:06:15,120 --> 00:06:15,720 surprising. 159 00:06:16,300 --> 00:06:19,480 Like example of C++ or C language. 160 00:06:19,820 --> 00:06:20,060 Okay, 161 00:06:20,380 --> 00:06:22,420 here you can see the difference 162 00:06:22,420 --> 00:06:24,380 between dynamic with static. 163 00:06:24,700 --> 00:06:26,040 Here, as you can see, 164 00:06:26,380 --> 00:06:28,160 define the function mean 165 00:06:28,160 --> 00:06:29,380 and we passed the array. 166 00:06:29,700 --> 00:06:33,060 We don't declare the array as a lease 167 00:06:33,060 --> 00:06:36,880 or in the result we put in as a data type. 168 00:06:37,000 --> 00:06:40,180 Python will know itself while interpreting it, 169 00:06:40,320 --> 00:06:43,340 transforming source code to byte code will itself. 170 00:06:43,480 --> 00:06:46,980 But in the static example of C, 171 00:06:47,200 --> 00:06:49,340 we can see function double mean 172 00:06:49,340 --> 00:06:51,300 because it will return the double. 173 00:06:51,680 --> 00:06:55,280 And here you can see we put double and array. 174 00:06:55,480 --> 00:06:58,600 And also we put the double before result. 175 00:06:58,860 --> 00:06:59,140 We should, 176 00:06:59,980 --> 00:07:00,820 in the static type, 177 00:07:00,960 --> 00:07:03,920 you should declare before and our code, 178 00:07:04,280 --> 00:07:05,160 it's data types. 179 00:07:05,960 --> 00:07:07,800 Like double integer string, 180 00:07:08,620 --> 00:07:08,960 float 181 00:07:10,260 --> 00:07:11,800 or vector. 182 00:07:12,280 --> 00:07:14,700 And also here you can see strong and weak. 183 00:07:15,820 --> 00:07:16,440 In the strong, 184 00:07:16,780 --> 00:07:17,600 we can see like, 185 00:07:17,940 --> 00:07:19,520 we cannot add 42 186 00:07:20,050 --> 00:07:22,040 to string. 187 00:07:22,580 --> 00:07:23,980 Because this is a string, 188 00:07:24,240 --> 00:07:25,220 but this is integer. 189 00:07:25,620 --> 00:07:28,560 Before adding, you should convert integer to string. 190 00:07:29,140 --> 00:07:29,540 Like here, 191 00:07:30,600 --> 00:07:31,060 str 192 00:07:32,390 --> 00:07:33,040 parenthesis 193 00:07:33,940 --> 00:07:34,140 42 plus string. 194 00:07:35,960 --> 00:07:37,740 Like here and then here you can add. 195 00:07:38,120 --> 00:07:38,820 But in a weak, 196 00:07:39,420 --> 00:07:40,920 like example of JavaScript, 197 00:07:42,300 --> 00:07:47,320 it will add itself because it's a weak language 198 00:07:47,750 --> 00:07:49,200 in short, I can say. 199 00:07:49,580 --> 00:07:50,660 Let's move on. 200 00:07:51,640 --> 00:07:51,820 Okay, 201 00:07:53,800 --> 00:07:54,900 introduction to Python. 202 00:07:56,120 --> 00:07:57,980 I hope you know the founder of Python, 203 00:07:58,650 --> 00:08:00,040 Guido van Rosso. 204 00:08:02,240 --> 00:08:03,440 He worked, 205 00:08:03,860 --> 00:08:07,620 started working in the late December 1989. 206 00:08:09,000 --> 00:08:11,580 And first version was released early 207 00:08:11,880 --> 00:08:12,780 1990. 208 00:08:15,460 --> 00:08:17,520 Yeah, and also language was needed Python. 209 00:08:18,260 --> 00:08:22,580 And because the Guido van Rosso really liked 210 00:08:22,620 --> 00:08:26,220 the comedy show of Monty Python's flying circus. 211 00:08:30,260 --> 00:08:32,760 Okay, let's define the Python. 212 00:08:34,560 --> 00:08:35,540 We already do know. 213 00:08:37,090 --> 00:08:39,480 Purpose level of abstractions. 214 00:08:40,320 --> 00:08:42,340 And we can say that Python is 215 00:08:43,040 --> 00:08:44,060 general purpose, 216 00:08:45,060 --> 00:08:45,720 higher level, 217 00:08:47,080 --> 00:08:47,860 imperative, 218 00:08:48,980 --> 00:08:49,720 interpreted, 219 00:08:51,820 --> 00:08:55,000 strong in dynamic typing programming language. 220 00:09:00,900 --> 00:09:01,380 Okay, 221 00:09:02,560 --> 00:09:05,000 for general purpose, why it's general purpose, 222 00:09:05,620 --> 00:09:07,620 because we can use Python for scripting, 223 00:09:08,720 --> 00:09:09,620 for web development, 224 00:09:10,280 --> 00:09:11,680 for data analysis, 225 00:09:12,360 --> 00:09:13,640 for machine learning in AI, 226 00:09:14,420 --> 00:09:16,740 develops in system administrations, 227 00:09:17,620 --> 00:09:18,980 testers, automation, 228 00:09:20,220 --> 00:09:20,980 and prototyping. 229 00:09:24,620 --> 00:09:27,100 Okay, we already know why it's 230 00:09:27,840 --> 00:09:34,700 high level and why it's interpreted because source code will be compiled using Python 231 00:09:35,100 --> 00:09:36,900 VM to bytecode, 232 00:09:38,340 --> 00:09:40,680 a Python compiler to bytecode, 233 00:09:40,920 --> 00:09:42,860 and then Python VM to machine code, 234 00:09:43,440 --> 00:09:43,880 and then 235 00:09:44,560 --> 00:09:45,360 computer. 236 00:09:47,280 --> 00:09:47,620 Oh, yes. 237 00:09:50,180 --> 00:09:51,740 Yeah, it's object oriented. 238 00:09:52,580 --> 00:09:54,240 In Python, everything is object, 239 00:09:54,920 --> 00:09:56,580 even functions are object. 240 00:09:58,620 --> 00:09:59,920 And dynamic. 241 00:10:00,780 --> 00:10:01,600 Yeah, 242 00:10:01,960 --> 00:10:02,720 it's dynamic. 243 00:10:02,960 --> 00:10:04,340 You don't need to put 244 00:10:04,940 --> 00:10:05,240 int 245 00:10:06,320 --> 00:10:09,560 before x or string before y, 246 00:10:09,860 --> 00:10:11,600 it will know itself 247 00:10:12,450 --> 00:10:14,120 during the execution. 248 00:10:16,700 --> 00:10:19,320 There are some advantages for Python, 249 00:10:19,580 --> 00:10:20,580 like easy to learn. 250 00:10:21,020 --> 00:10:21,660 It's easy like 251 00:10:22,620 --> 00:10:24,180 you learn the English language, 252 00:10:25,720 --> 00:10:27,620 you will learn Python programming language, 253 00:10:28,720 --> 00:10:29,280 almost same. 254 00:10:30,000 --> 00:10:31,580 And it's fast development, 255 00:10:32,160 --> 00:10:33,140 a lot of libraries, 256 00:10:33,520 --> 00:10:33,880 a lot of 257 00:10:34,780 --> 00:10:36,420 standard libraries, a lot of frameworks, 258 00:10:37,060 --> 00:10:37,300 Python, 259 00:10:37,720 --> 00:10:38,700 Django, Flask, 260 00:10:39,360 --> 00:10:39,980 fast API, 261 00:10:41,500 --> 00:10:42,300 a lot of, 262 00:10:43,640 --> 00:10:45,240 also it's dynamic typing, 263 00:10:45,460 --> 00:10:47,600 you don't need to declare data types 264 00:10:48,480 --> 00:10:49,380 in the source codes. 265 00:10:51,060 --> 00:10:53,440 And also it's portable and extensible, 266 00:10:54,060 --> 00:10:54,700 because there are 267 00:10:55,270 --> 00:10:56,460 extents, oops, 268 00:10:57,020 --> 00:11:00,000 there are extents for site and for C, 269 00:11:00,740 --> 00:11:03,480 and Jiton for Jiten, 270 00:11:03,640 --> 00:11:05,220 I don't know how to pronounce it, 271 00:11:05,720 --> 00:11:07,480 for Java.net, 272 00:11:07,940 --> 00:11:08,100 yeah. 273 00:11:09,180 --> 00:11:10,940 And it's free and open source. 274 00:11:11,380 --> 00:11:12,580 You can always go to 275 00:11:13,240 --> 00:11:16,260 python.org and download the 276 00:11:16,780 --> 00:11:17,540 version that 277 00:11:18,600 --> 00:11:21,200 you want to work with. 278 00:11:23,700 --> 00:11:24,480 Let's go ahead, 279 00:11:24,860 --> 00:11:25,560 just go ahead. 280 00:11:26,480 --> 00:11:26,640 Okay. 281 00:11:29,000 --> 00:11:29,160 Yeah, 282 00:11:29,560 --> 00:11:31,840 but there are some disadvantages like 283 00:11:32,600 --> 00:11:32,780 speed, 284 00:11:33,520 --> 00:11:34,820 because it's interpreted, 285 00:11:35,820 --> 00:11:37,860 for sure, speed will be less. 286 00:11:39,800 --> 00:11:40,540 And also, 287 00:11:41,200 --> 00:11:43,380 normal to reading like in Java, 288 00:11:45,060 --> 00:11:46,700 or high memory consumption, 289 00:11:47,600 --> 00:11:47,940 because 290 00:11:48,840 --> 00:11:51,500 you're not declaring the data types, 291 00:11:52,520 --> 00:11:54,140 while coding, 292 00:11:55,340 --> 00:11:55,740 it will, 293 00:11:56,500 --> 00:11:57,220 it's dynamic, 294 00:11:57,980 --> 00:11:58,880 because of this, it's 295 00:11:59,500 --> 00:12:00,800 concept high memory. 296 00:12:01,380 --> 00:12:02,340 Okay. 297 00:12:03,940 --> 00:12:05,200 Let's move on. 298 00:12:08,420 --> 00:12:09,560 Interactive Python. 299 00:12:12,620 --> 00:12:12,860 Okay. 300 00:12:18,100 --> 00:12:18,280 Okay, 301 00:12:18,640 --> 00:12:20,480 here you can see some keywords 302 00:12:23,290 --> 00:12:25,360 for Python, use it. 303 00:12:25,920 --> 00:12:27,540 Yeah, did already start. 304 00:12:28,200 --> 00:12:31,860 You can't use this as a variable in your projects. 305 00:12:34,530 --> 00:12:35,780 Okay, 306 00:12:36,180 --> 00:12:36,960 let's move on. 307 00:12:40,400 --> 00:12:40,620 Next. 308 00:12:48,660 --> 00:12:50,920 Python installation, Python installation, 309 00:12:51,540 --> 00:12:52,200 Git installation, 310 00:12:53,400 --> 00:12:53,900 Git lab. 311 00:12:54,760 --> 00:12:57,420 Okay, I hope you know about Python, how to install Python, 312 00:12:57,620 --> 00:12:58,220 you just go to 313 00:12:58,800 --> 00:13:01,780 python.org and download the version that 314 00:13:03,040 --> 00:13:06,260 you want, or just download the last version. 315 00:13:07,340 --> 00:13:07,720 That's it. 316 00:13:09,300 --> 00:13:09,780 For Python, 317 00:13:10,080 --> 00:13:12,960 you can install the Python or you can install the 318 00:13:16,210 --> 00:13:21,360 Python from jitprints, or you can install the VS code. 319 00:13:24,040 --> 00:13:24,740 Also, 320 00:13:25,400 --> 00:13:26,260 you'll see the code 321 00:13:28,580 --> 00:13:29,200 as you wish. 322 00:13:32,400 --> 00:13:33,580 Now, Git installation, 323 00:13:34,160 --> 00:13:34,440 yep. 324 00:13:36,040 --> 00:13:37,640 Just need to go to git 325 00:13:38,680 --> 00:13:40,240 scm.com 326 00:13:41,020 --> 00:13:42,260 and download. 327 00:13:43,520 --> 00:13:44,680 Click on the download here, 328 00:13:45,400 --> 00:13:47,340 choose your operating system windows, 329 00:13:47,940 --> 00:13:48,860 macOS or Linux, 330 00:13:49,980 --> 00:13:50,780 and just download it. 331 00:13:53,880 --> 00:13:54,140 Okay. 332 00:13:56,360 --> 00:13:57,740 Let's move on. 333 00:14:00,680 --> 00:14:01,380 Git lab. 334 00:14:02,780 --> 00:14:03,480 Yeah, 335 00:14:04,260 --> 00:14:06,440 why they are saying Git lab? 336 00:14:07,480 --> 00:14:08,960 Because here, 337 00:14:09,520 --> 00:14:10,260 there is some, 338 00:14:11,220 --> 00:14:14,060 I can show you practical task numbers. 339 00:14:14,480 --> 00:14:16,760 There's some practical tasks that are 340 00:14:17,350 --> 00:14:19,760 pushed to Git lab, not GitHub. 341 00:14:20,180 --> 00:14:21,600 That's why they are 342 00:14:21,600 --> 00:14:23,740 pushing to have a Git lab account. 343 00:14:24,460 --> 00:14:27,820 But you can open Git lab as well, Git lab.com, 344 00:14:28,140 --> 00:14:28,180 or 345 00:14:28,580 --> 00:14:28,900 just 346 00:14:29,540 --> 00:14:33,200 GitHub by typing git lab.com 347 00:14:34,300 --> 00:14:35,820 and create an account. 348 00:14:36,800 --> 00:14:37,780 It's really easy. 349 00:14:38,200 --> 00:14:39,000 I hope you will 350 00:14:39,940 --> 00:14:41,220 do it yours by yourself. 351 00:14:42,560 --> 00:14:43,580 Let's move on. 352 00:14:47,810 --> 00:14:48,660 Okay. 353 00:14:48,660 --> 00:14:49,220 Done with this. 354 00:14:51,060 --> 00:14:52,000 Done with this. 355 00:14:56,730 --> 00:14:57,580 Okay. 356 00:15:01,210 --> 00:15:03,840 Let's learn about the data types. 357 00:15:05,980 --> 00:15:06,560 Data types, 358 00:15:07,060 --> 00:15:07,660 like numbers, 359 00:15:08,320 --> 00:15:09,160 conditional operators, 360 00:15:09,540 --> 00:15:09,800 loops, 361 00:15:10,340 --> 00:15:13,080 stringers, listers, topless, 362 00:15:14,060 --> 00:15:15,940 sets and dictionaries. 363 00:15:18,240 --> 00:15:19,800 Let's move on data types. 364 00:15:23,050 --> 00:15:24,100 Okay. 365 00:15:24,820 --> 00:15:25,080 Okay, 366 00:15:25,440 --> 00:15:26,360 data types, 367 00:15:27,300 --> 00:15:28,780 variables and objects. 368 00:15:29,660 --> 00:15:31,000 This is a we 369 00:15:31,340 --> 00:15:32,520 assigned to one. 370 00:15:33,480 --> 00:15:37,320 And it says there integer data type is this is integer, 371 00:15:37,540 --> 00:15:38,360 this is a string. 372 00:15:39,360 --> 00:15:39,800 In Python, 373 00:15:40,740 --> 00:15:41,840 everything is object. 374 00:15:43,420 --> 00:15:44,320 And object is an 375 00:15:44,840 --> 00:15:46,580 instance of some class. 376 00:15:50,220 --> 00:15:51,140 Everything is an object. 377 00:15:52,300 --> 00:15:54,320 Even classes are functions. 378 00:15:58,880 --> 00:15:59,180 Okay. 379 00:16:01,020 --> 00:16:02,760 Python standard data types, 380 00:16:04,260 --> 00:16:05,540 have numeric data types, 381 00:16:06,440 --> 00:16:07,320 like integer, 382 00:16:09,020 --> 00:16:11,420 float or complex numbers. 383 00:16:13,740 --> 00:16:14,560 And strings, 384 00:16:15,380 --> 00:16:17,840 everything that is written inside it, 385 00:16:18,400 --> 00:16:19,860 double quotes, 386 00:16:20,980 --> 00:16:23,980 or also one quotes 387 00:16:25,940 --> 00:16:26,780 is string. 388 00:16:29,780 --> 00:16:30,520 And listers. 389 00:16:33,260 --> 00:16:33,820 Listers, 390 00:16:35,060 --> 00:16:36,760 we can say also like array. 391 00:16:38,560 --> 00:16:38,700 And 392 00:16:39,320 --> 00:16:39,760 for this, 393 00:16:42,270 --> 00:16:47,580 list is a sequence of elements inside square brackets, 394 00:16:47,960 --> 00:16:48,880 like here. 395 00:16:51,860 --> 00:16:52,500 You can put 396 00:16:53,120 --> 00:16:54,340 everything here. 397 00:16:55,140 --> 00:16:56,020 It can be integer, 398 00:16:56,360 --> 00:16:57,060 it can be float, 399 00:16:57,700 --> 00:16:58,240 it can be 400 00:16:58,860 --> 00:16:59,360 boolean, 401 00:16:59,700 --> 00:17:01,780 or it can be also string. 402 00:17:04,640 --> 00:17:05,560 Topless. 403 00:17:08,790 --> 00:17:11,440 It's also like, 404 00:17:12,280 --> 00:17:15,440 it looks like same to listers, 405 00:17:15,700 --> 00:17:18,160 but it's in closer to parenthesis. 406 00:17:21,680 --> 00:17:22,880 As you can see here. 407 00:17:27,020 --> 00:17:31,340 And sets, sets us an unordered collection. 408 00:17:32,480 --> 00:17:36,220 And it doesn't allow any kind of duplicates. 409 00:17:40,300 --> 00:17:40,860 Dictionary. 410 00:17:42,140 --> 00:17:44,680 It's a mapping of K value pairs 411 00:17:45,490 --> 00:17:48,560 with K value pairs. 412 00:17:48,840 --> 00:17:48,940 Yeah. 413 00:17:49,640 --> 00:17:50,880 Like message, 414 00:17:51,560 --> 00:17:51,820 high, 415 00:17:54,180 --> 00:17:54,380 or 416 00:17:55,080 --> 00:17:55,640 birthday, 417 00:17:56,840 --> 00:17:57,560 some year, 418 00:17:58,200 --> 00:17:58,680 name, 419 00:18:00,000 --> 00:18:00,940 some name, 420 00:18:01,420 --> 00:18:03,260 like K and value, 421 00:18:03,640 --> 00:18:04,560 K and value, 422 00:18:05,500 --> 00:18:06,620 like mapping. 423 00:18:08,540 --> 00:18:11,720 Okay, we also have mutable and immutable objects. 424 00:18:13,690 --> 00:18:15,740 Like for mutable, 425 00:18:16,080 --> 00:18:19,280 it's objects that can change after their creation. 426 00:18:20,880 --> 00:18:21,780 But in immutable, 427 00:18:22,440 --> 00:18:24,200 you cannot change the type of 428 00:18:26,280 --> 00:18:27,380 after its creation, 429 00:18:28,620 --> 00:18:29,600 like integer, 430 00:18:30,260 --> 00:18:30,540 float, 431 00:18:31,600 --> 00:18:31,820 string, 432 00:18:33,140 --> 00:18:33,940 or tuple. 433 00:18:34,360 --> 00:18:35,340 Let's move on. 434 00:18:35,580 --> 00:18:37,780 We have operators and operands. 435 00:18:38,400 --> 00:18:41,820 Okay, first, what are the operators and operands? 436 00:18:42,740 --> 00:18:45,500 It says like in simple terms and expression 437 00:18:45,820 --> 00:18:46,580 two plus three, 438 00:18:47,180 --> 00:18:51,100 the numbers two and three are operands. 439 00:18:51,880 --> 00:18:53,620 And cyan is operator. 440 00:18:56,300 --> 00:18:57,260 We have 441 00:18:57,800 --> 00:19:00,980 unordered operators plus and minus binary operators, 442 00:19:01,940 --> 00:19:03,100 less or more, 443 00:19:04,020 --> 00:19:06,140 and in equal or in equal. 444 00:19:06,860 --> 00:19:08,680 And turn your operator like else, 445 00:19:09,020 --> 00:19:09,180 if, 446 00:19:13,200 --> 00:19:14,260 For arithmetic operands, 447 00:19:14,780 --> 00:19:15,560 we can 448 00:19:17,180 --> 00:19:19,380 grow up like plus, minus, 449 00:19:20,080 --> 00:19:20,740 multiplication, 450 00:19:21,460 --> 00:19:21,960 division, 451 00:19:23,300 --> 00:19:24,100 and et cetera. 452 00:19:25,780 --> 00:19:28,600 And there is also assignment operands like plus and 453 00:19:30,060 --> 00:19:31,340 equal sign, 454 00:19:31,960 --> 00:19:33,280 minus or equal sign. 455 00:19:34,260 --> 00:19:39,520 It will assign the right value to the left value. 456 00:19:44,480 --> 00:19:48,100 I can show you the example. 457 00:19:52,360 --> 00:19:53,540 Okay, let's assume we have 458 00:19:54,300 --> 00:19:55,060 a zero, 459 00:19:55,400 --> 00:19:57,240 a plus equals to one. 460 00:19:59,850 --> 00:20:01,840 If we print a, 461 00:20:02,900 --> 00:20:05,100 it will print a one here. 462 00:20:06,460 --> 00:20:07,220 This is 463 00:20:08,200 --> 00:20:09,000 same as 464 00:20:10,200 --> 00:20:12,580 a equals to a plus one. 465 00:20:15,690 --> 00:20:18,680 With minus is the same scenario. 466 00:20:20,500 --> 00:20:22,220 But here will be minus and minus. 467 00:20:25,580 --> 00:20:26,440 We have also, 468 00:20:26,880 --> 00:20:28,440 we can put also the 469 00:20:34,020 --> 00:20:36,760 multiplication or division. 470 00:20:38,040 --> 00:20:38,860 Same here. 471 00:20:39,620 --> 00:20:39,920 Division 472 00:20:40,440 --> 00:20:40,900 or multiplication. 473 00:20:43,190 --> 00:20:44,240 Okay, 474 00:20:45,000 --> 00:20:47,720 we have comparison operators, 475 00:20:48,260 --> 00:20:49,140 like equal sign, 476 00:20:49,920 --> 00:20:50,740 not equal sign, 477 00:20:51,060 --> 00:20:52,600 greater or less. 478 00:20:55,080 --> 00:20:59,140 Logical operators and or are not. 479 00:21:02,200 --> 00:21:05,380 And membership operators like in not in 480 00:21:07,400 --> 00:21:08,220 and bitwise, 481 00:21:08,900 --> 00:21:11,620 bitwise and bitwise are bitwise XR. 482 00:21:15,340 --> 00:21:15,980 For comparison, 483 00:21:17,000 --> 00:21:20,580 we can say one equals to two. 484 00:21:21,840 --> 00:21:23,880 And we can print this. 485 00:21:26,000 --> 00:21:27,020 It just says false. 486 00:21:28,780 --> 00:21:30,080 We can put inequality. 487 00:21:31,420 --> 00:21:32,320 It just says true. 488 00:21:33,580 --> 00:21:33,800 Okay, 489 00:21:34,160 --> 00:21:34,820 multiplication operator. 490 00:21:40,930 --> 00:21:43,000 One and one. 491 00:21:48,290 --> 00:21:53,020 It's true like if we put one and zero, 492 00:21:55,300 --> 00:21:56,380 it will say 493 00:21:56,860 --> 00:21:57,020 false. 494 00:22:04,710 --> 00:22:06,040 Let's move on. 495 00:22:11,260 --> 00:22:11,520 Okay, 496 00:22:12,220 --> 00:22:14,240 let's talk about the numbers and Python. 497 00:22:16,120 --> 00:22:20,640 And there are, yeah, there are three different types of numbers in Python integer, 498 00:22:21,480 --> 00:22:22,900 float or complex. 499 00:22:23,460 --> 00:22:25,640 This is an integer like we assign a 500 00:22:26,910 --> 00:22:31,000 and we assign it to variable a hundred. 501 00:22:33,880 --> 00:22:34,540 We assign also 502 00:22:35,970 --> 00:22:36,920 minus 503 00:22:38,220 --> 00:22:40,540 or such a huge number. 504 00:22:43,660 --> 00:22:44,840 And if you have a 505 00:22:46,280 --> 00:22:47,080 integer 506 00:22:48,260 --> 00:22:49,060 that 507 00:22:49,680 --> 00:22:52,900 in double quotes like string format, we can always 508 00:22:54,100 --> 00:22:55,860 convert to integer like 509 00:22:57,140 --> 00:22:59,300 just int parenthesis and X, 510 00:23:00,180 --> 00:23:01,480 it will convert to integer. 511 00:23:02,260 --> 00:23:05,420 And we can see the type type 512 00:23:06,040 --> 00:23:06,380 Y. 513 00:23:07,820 --> 00:23:10,720 And here integer is converted to integer. 514 00:23:11,160 --> 00:23:12,180 Let's move on. 515 00:23:12,760 --> 00:23:15,020 We have float like floating, 516 00:23:16,560 --> 00:23:19,140 floating point numbers like 517 00:23:20,440 --> 00:23:23,100 we have variable a and we assign 518 00:23:25,150 --> 00:23:26,100 7893 519 00:23:27,270 --> 00:23:28,220 .45. 520 00:23:30,590 --> 00:23:38,680 We can also use scientific notation like 1.0 E and zero. 521 00:23:41,820 --> 00:23:42,740 And here we can 522 00:23:42,760 --> 00:23:45,240 always convert string to float, 523 00:23:45,940 --> 00:23:46,600 float integer 524 00:23:48,620 --> 00:23:50,720 integer to float 525 00:23:52,860 --> 00:23:55,100 from one data type to another data type. 526 00:23:55,880 --> 00:23:57,980 We have also complex numbers. 527 00:23:59,400 --> 00:23:59,600 Yep. 528 00:24:02,590 --> 00:24:03,920 Let's move on. 529 00:24:05,800 --> 00:24:07,960 Okay, there is a simple calculations. 530 00:24:09,720 --> 00:24:12,200 Let's not waste time for this. 531 00:24:12,360 --> 00:24:13,400 We don't need this. 532 00:24:13,720 --> 00:24:13,860 Let's 533 00:24:14,620 --> 00:24:15,040 continue. 534 00:24:15,380 --> 00:24:16,160 Let's move on. 535 00:24:18,420 --> 00:24:19,300 Boolean comparison. 536 00:24:19,980 --> 00:24:24,880 Boolean operates a law for defining the logical expression or can 537 00:24:24,880 --> 00:24:27,300 be used by control flow statements. 538 00:24:28,240 --> 00:24:32,560 But comparison operators provide different options for comparing the values, 539 00:24:33,380 --> 00:24:34,760 which each other like 540 00:24:37,100 --> 00:24:38,460 we can share compare like 541 00:24:39,200 --> 00:24:42,600 result equals to three greater 542 00:24:42,600 --> 00:24:47,280 than or equal to one and 10 less or 543 00:24:48,140 --> 00:24:49,840 less than 20. 544 00:24:50,200 --> 00:24:51,040 And this is true. 545 00:24:52,020 --> 00:24:53,340 Why if 546 00:24:54,080 --> 00:24:54,840 this is true, 547 00:24:55,640 --> 00:24:56,600 and this is true, 548 00:24:57,300 --> 00:24:58,220 result will be true. 549 00:24:58,720 --> 00:25:00,200 If one of them is false, 550 00:25:01,160 --> 00:25:02,300 the result will be false. 551 00:25:03,920 --> 00:25:05,360 When we use end operator, 552 00:25:06,300 --> 00:25:07,780 but if we use or operator, 553 00:25:09,180 --> 00:25:10,220 if this is false, 554 00:25:11,360 --> 00:25:12,420 and this is true, 555 00:25:13,380 --> 00:25:14,460 result will be true also. 556 00:25:15,820 --> 00:25:17,100 Because in or operator, 557 00:25:18,020 --> 00:25:19,360 one of them should be true. 558 00:25:19,780 --> 00:25:20,600 And it's enough. 559 00:25:22,500 --> 00:25:23,200 And not operator, 560 00:25:23,640 --> 00:25:24,200 it will just, 561 00:25:27,440 --> 00:25:28,780 we can say 562 00:25:29,360 --> 00:25:34,000 make true to false and false to true 563 00:25:34,600 --> 00:25:35,960 like opposite. 564 00:25:37,120 --> 00:25:38,020 We can see here 565 00:25:39,120 --> 00:25:39,820 string, 566 00:25:40,360 --> 00:25:40,520 string, 567 00:25:41,480 --> 00:25:44,460 and we are taking a equals to b. 568 00:25:45,160 --> 00:25:45,980 Result is true. 569 00:25:46,380 --> 00:25:47,500 Okay, let's move on. 570 00:25:48,100 --> 00:25:54,820 Okay, we have also conditions with flow control statements like a equals to 20, 571 00:25:55,120 --> 00:25:58,460 b equals to 33 and minimum is three. 572 00:25:59,180 --> 00:26:03,240 And we're here checking if a less or equal to minimum 573 00:26:03,950 --> 00:26:04,900 and 574 00:26:05,510 --> 00:26:07,080 b more or 575 00:26:07,820 --> 00:26:15,580 equal to minimum result will be a plus b multiplication to two. 576 00:26:17,440 --> 00:26:20,160 Else if this statement is incorrect, 577 00:26:21,820 --> 00:26:24,820 this part of code will not be executed. 578 00:26:25,840 --> 00:26:30,660 It will go here else and result will be zero. 579 00:26:32,000 --> 00:26:33,160 And but in our case, 580 00:26:33,480 --> 00:26:34,860 a is 20 and 581 00:26:35,480 --> 00:26:38,580 it is more or equal to minimum three. 582 00:26:39,600 --> 00:26:41,460 And b 33 is 583 00:26:42,340 --> 00:26:44,160 more than or equal to three. 584 00:26:45,320 --> 00:26:46,000 In this case, 585 00:26:46,420 --> 00:26:49,220 result will be a plus b, it's 53, 586 00:26:50,000 --> 00:26:52,680 multiplication by two, and it's 587 00:26:53,370 --> 00:26:54,220 106. 588 00:27:00,090 --> 00:27:04,740 We have also a leave or else if 589 00:27:05,720 --> 00:27:08,000 statement where we can use a leave. 590 00:27:08,880 --> 00:27:09,240 Actually, 591 00:27:09,800 --> 00:27:14,040 we can also if we use here if it will check this 592 00:27:16,200 --> 00:27:17,320 and this 593 00:27:17,960 --> 00:27:18,760 also. 594 00:27:19,740 --> 00:27:21,100 And then print out. 595 00:27:21,820 --> 00:27:22,940 But an leave, 596 00:27:24,180 --> 00:27:26,700 it will check this if this is true, 597 00:27:27,080 --> 00:27:28,100 it will just print out. 598 00:27:28,920 --> 00:27:29,820 If this is incorrect, 599 00:27:30,660 --> 00:27:33,440 it will check this and print out. 600 00:27:37,160 --> 00:27:40,660 But let's imagine this is not a leave, 601 00:27:40,840 --> 00:27:42,060 but this is if, 602 00:27:43,100 --> 00:27:44,780 it will check this, this is true, 603 00:27:45,420 --> 00:27:47,260 but it will also check this 604 00:27:48,220 --> 00:27:49,660 because we use it if here. 605 00:27:51,700 --> 00:27:52,720 And then print out. 606 00:27:54,380 --> 00:27:55,980 This is the main difference 607 00:27:56,960 --> 00:27:59,260 between if and a leave. 608 00:27:59,820 --> 00:28:00,920 Let's move on. 609 00:28:01,580 --> 00:28:01,880 Nothing.39040

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.