1 00:00:00,000 --> 00:00:02,600 [no audio] 2 00:00:02,600 --> 00:00:05,000 Friends, here we are going to practice 3 00:00:05,000 --> 00:00:06,900 with your conditional statements, 4 00:00:07,100 --> 00:00:11,800 and that practice is, read a number between 1 to 10, 5 00:00:13,200 --> 00:00:16,000 right, and then display it in terms of words. 6 00:00:16,900 --> 00:00:20,600 So if you run your Python script, it has to ask, "Enter your 7 00:00:20,600 --> 00:00:24,600 number". Then you have to enter any number like 1, 2, 3 or up 8 00:00:24,600 --> 00:00:28,700 to 10. Then after that, through your Python script you have 9 00:00:28,700 --> 00:00:31,800 to display that number in terms of words. 10 00:00:32,799 --> 00:00:36,300 So that is what I am going to develop with your conditional 11 00:00:36,300 --> 00:00:37,900 statements, right? 12 00:00:38,100 --> 00:00:39,900 Let me open my editor. 13 00:00:40,600 --> 00:00:42,200 So this is my editor. 14 00:00:43,000 --> 00:00:48,100 Let me save the script name as 'number_to_word'. 15 00:00:49,700 --> 00:00:54,000 'number_to_word.py'. That's it. 16 00:00:54,600 --> 00:00:59,400 So guys first step is, your script has to read some number. 17 00:00:59,900 --> 00:01:05,700 Let me take 'input', or 'num='. See guys, 18 00:01:05,700 --> 00:01:06,900 we are reading a number, 19 00:01:06,900 --> 00:01:09,500 that's why you have to use 'eval()' function in your Python 3. 20 00:01:09,700 --> 00:01:13,500 'input', then here simply write, "Enter your number: ". 21 00:01:13,500 --> 00:01:15,700 [no audio] 22 00:01:15,700 --> 00:01:19,300 Right. So after that whenever you are entering the, number, 23 00:01:19,300 --> 00:01:22,500 you have to convert that number into word. Suppose 24 00:01:22,500 --> 00:01:24,600 let's say you are entering number 1, 25 00:01:25,400 --> 00:01:28,800 then your given number is '1', and then you have to print it 26 00:01:28,800 --> 00:01:31,400 in terms of words like 'o-n-e', "one". 27 00:01:32,600 --> 00:01:35,500 So, directly I can't write in this way, 'print()', 28 00:01:37,200 --> 00:01:39,100 you are entering number '1' suppose, right. 29 00:01:39,200 --> 00:01:41,500 So for that I can't write in this way, 30 00:01:43,200 --> 00:01:48,200 or simply, if your number is '1', right, if your number is '1' then 31 00:01:48,200 --> 00:01:50,800 only I have to print this, "one", "o-n-e", "one'. If your number is 32 00:01:50,800 --> 00:01:54,700 2, then I have to print "t-w-o", "two". Let me write first 33 00:01:55,900 --> 00:01:59,600 'print("two")'. 'print("three")'. 34 00:02:01,000 --> 00:02:03,200 Let me write it first so that you will get idea. 35 00:02:04,300 --> 00:02:08,800 'print("four")', 'print("five")'. 36 00:02:08,800 --> 00:02:10,800 [no audio] 37 00:02:10,800 --> 00:02:12,300 Let me repeat it up to "ten". 38 00:02:13,800 --> 00:02:14,800 'print("six")'. 39 00:02:16,100 --> 00:02:18,300 'print("seven"). 40 00:02:18,300 --> 00:02:21,100 [no audio] 41 00:02:21,100 --> 00:02:22,100 'print("eight")'. 42 00:02:23,700 --> 00:02:27,000 'print("nine")'. Then, let me print it, 'print("ten")'. 43 00:02:28,100 --> 00:02:32,800 That's it. But if I run this script, right. Let me run it first. 44 00:02:33,700 --> 00:02:35,000 So our script is, 45 00:02:37,000 --> 00:02:39,700 number to word conversion, right. 46 00:02:39,700 --> 00:02:41,500 [no audio] 47 00:02:41,500 --> 00:02:46,100 So, this is your script. Now if I run that, what is happening? 48 00:02:46,500 --> 00:02:49,600 Because of very first line your script is going to ask, 49 00:02:49,600 --> 00:02:50,700 "Enter your number: ". 50 00:02:51,200 --> 00:02:54,000 Let me do that. "Enter your number: ". Suppose 51 00:02:54,000 --> 00:02:55,200 I'm entering number "2". 52 00:02:55,800 --> 00:02:59,200 So if I enter number 2, it has to display only "two" but 53 00:02:59,200 --> 00:03:02,000 your script, whatever you have as of now, that is going to 54 00:03:02,100 --> 00:03:05,100 print one, two, three, four, five, six, seven, eight, nine, and 55 00:03:05,100 --> 00:03:07,300 ten. This is not correct. 56 00:03:07,900 --> 00:03:12,500 If your given number is 2, then you have to print only "two". That 57 00:03:12,500 --> 00:03:16,600 means you have to take a decision before going to print your statement. 58 00:03:16,600 --> 00:03:18,400 [no audio] 59 00:03:18,400 --> 00:03:21,800 Right. So, you know how you can take a decision. You can take a 60 00:03:21,800 --> 00:03:24,200 decision using conditional statements. 61 00:03:24,600 --> 00:03:26,000 That's why what I am doing is, 62 00:03:27,300 --> 00:03:30,400 I'm writing 'if num', if it is 63 00:03:30,400 --> 00:03:34,000 equal to 1, then I want to print this line. That's it. 64 00:03:35,300 --> 00:03:40,600 Same way 'if num==2:', then I want to print this line. 65 00:03:42,300 --> 00:03:45,900 Likewise, let me repeat up to, 'if num==3:', 66 00:03:45,900 --> 00:03:47,400 then I want to 'print("three")'. 67 00:03:48,700 --> 00:03:52,900 Right. So guys now I am using a very simple "if" condition, because 68 00:03:52,900 --> 00:03:54,900 you can write your logic in any way. 69 00:03:56,000 --> 00:04:00,800 But while writing you have to write some effective script. 70 00:04:00,800 --> 00:04:03,900 For time being I am writing simple way using your 71 00:04:04,900 --> 00:04:09,700 simple "if" condition. I will also show you some effective scripts to 72 00:04:09,700 --> 00:04:12,000 implement this logic. 73 00:04:12,000 --> 00:04:14,000 [no audio] 74 00:04:14,000 --> 00:04:15,000 Let me do it. 75 00:04:15,000 --> 00:04:29,500 [no audio] 76 00:04:29,500 --> 00:04:35,700 Let me do it up to 9, then finally you have 10. Right. See that. 77 00:04:35,700 --> 00:04:37,200 'num==10'. 78 00:04:38,800 --> 00:04:43,100 That's it. Now go and run your script, right, 79 00:04:43,500 --> 00:04:46,800 and then enter any number, "5" you're getting only "five", then 80 00:04:46,800 --> 00:04:49,500 "1" you are getting "one". See that it's working perfectly. 81 00:04:50,400 --> 00:04:53,500 Right. So as of now, whatever the script you have that is 82 00:04:53,500 --> 00:04:58,700 working perfectly. But same script, assume that, same script 83 00:04:59,100 --> 00:05:00,800 I am running by providing, 84 00:05:00,800 --> 00:05:02,100 [no audio] 85 00:05:02,100 --> 00:05:06,900 by providing a number called 12. Now you're not getting an output. 86 00:05:07,900 --> 00:05:08,900 Right. 87 00:05:10,400 --> 00:05:15,400 So if your entered number is 1 to 10 range then only 88 00:05:15,400 --> 00:05:16,400 you're going to display. 89 00:05:17,000 --> 00:05:19,300 So that's what you have to mention in your script. 90 00:05:19,300 --> 00:05:23,700 So I am entering, "Enter your number: ". "Enter any number:", 91 00:05:24,700 --> 00:05:30,700 "Enter any number between 1-10 range:" 92 00:05:31,700 --> 00:05:34,600 Okay, for time being we'll keep this message in this way. 93 00:05:35,600 --> 00:05:39,500 Now, if you run your script, yes, you are observing, "Enter 94 00:05:39,500 --> 00:05:41,500 any number between 1-10 range:" 95 00:05:41,500 --> 00:05:42,800 Now, I'm entering suppose "3". 96 00:05:43,800 --> 00:05:46,800 Yes, you are getting. But even though if you are displaying, 97 00:05:46,800 --> 00:05:50,000 "Enter any number between 1 to 10 range:", by mistake I entered 98 00:05:50,000 --> 00:05:53,100 11. Now, you're not getting any output. 99 00:05:54,000 --> 00:05:58,100 That's why what I am doing is, if any number is not in the given 100 00:05:58,100 --> 00:05:59,800 range, 1-10 range. 101 00:05:59,800 --> 00:06:03,500 I want to display like, I want to display like, 102 00:06:03,500 --> 00:06:06,300 "Your number is an out of range number". 103 00:06:06,800 --> 00:06:08,300 That's why I'm adding one more 104 00:06:08,300 --> 00:06:14,900 'if' condition. At the ending, 'if num not in', if you remember 105 00:06:14,900 --> 00:06:23,600 there are membership operators, 'not in [1,2,3,4,5,6,7,8,9,10]:' range. 106 00:06:25,000 --> 00:06:26,800 Then I can say, 'print( 107 00:06:28,200 --> 00:06:29,400 "Your number is 108 00:06:29,400 --> 00:06:31,500 [no audio] 109 00:06:31,500 --> 00:06:32,900 out of range. 110 00:06:33,400 --> 00:06:35,900 Please select 111 00:06:37,300 --> 00:06:41,500 between 1-10 range"). That's it. 112 00:06:42,200 --> 00:06:46,000 By mistake if you enter any number other than 1 to 10 range. So guys 113 00:06:46,000 --> 00:06:48,100 first of all you have to know what is the membership operator 114 00:06:48,100 --> 00:06:53,400 here. See when this condition result, when this expression 115 00:06:53,400 --> 00:06:56,500 result will become 'True' means, let's say you are entering 116 00:06:56,500 --> 00:07:00,500 number 11, then 11 not in this range, right? 117 00:07:00,600 --> 00:07:01,500 That's what we are checking. 118 00:07:01,500 --> 00:07:04,700 If 11 is not in this range, then this expression will become 'True', 119 00:07:05,300 --> 00:07:06,600 then you are executing this line. 120 00:07:07,000 --> 00:07:12,000 Let's say, 10. 10, not in this range? No, 10 already 121 00:07:12,000 --> 00:07:15,200 it is there, but you are checking for not, that's why if 10 is 122 00:07:15,200 --> 00:07:18,700 the number then you will get this as 'False' result. 123 00:07:18,700 --> 00:07:20,400 That's why you are not executing this. 124 00:07:21,600 --> 00:07:27,600 Right. So guys, this is the simple way to use your 'if' condition 125 00:07:28,000 --> 00:07:31,600 for this requirement. But here there is a disadvantage. 126 00:07:31,900 --> 00:07:34,000 Of course, your code is perfectly correct. 127 00:07:34,500 --> 00:07:36,300 It will work for your number, 128 00:07:36,500 --> 00:07:39,000 I mean if any number you are going to enter between 1 129 00:07:39,000 --> 00:07:42,500 to 10 range. But here problem is, 130 00:07:43,500 --> 00:07:45,200 first let me explain with, 131 00:07:46,000 --> 00:07:50,200 let us assume your given number equals to 1, then what will happen? 132 00:07:51,200 --> 00:07:53,600 See, whenever if you run, your script will execute from top 133 00:07:53,600 --> 00:07:57,300 to down. Because of very first line your script is asking, 134 00:07:57,300 --> 00:08:00,300 "Enter your number between 1 to 10 range:". Suppose 135 00:08:00,300 --> 00:08:04,100 I am entering 1, then this 1 will go and store into your 'num' variable. 136 00:08:04,600 --> 00:08:09,700 Right. So after that, in second line you have "if" condition. So 'if 137 00:08:09,700 --> 00:08:13,200 num==1'. Yes, our number is 1, and we are checking with 1. 138 00:08:13,200 --> 00:08:14,200 This is true, no. 139 00:08:15,700 --> 00:08:20,400 Then you're printing this. Then your first 'if' condition expression 140 00:08:20,400 --> 00:08:22,400 is 'True', and you're printing only "one" 141 00:08:24,000 --> 00:08:25,500 That is over. Then immediately 142 00:08:25,500 --> 00:08:28,400 your Python will go and check next condition as well because 143 00:08:28,400 --> 00:08:31,000 all are individual 'if' conditions. There is no relation between 144 00:08:31,000 --> 00:08:35,100 any one of the 'if' conditions here. All are separate blocks, separate 145 00:08:35,100 --> 00:08:40,600 rooms. That's why your Python will go and check with second 146 00:08:40,600 --> 00:08:44,200 'if' as well, 'num' is 1, but we are checking with 2, '1==2'? 147 00:08:44,200 --> 00:08:48,700 No. 'False'. Likewise, all conditions are 'False', but we know 148 00:08:48,700 --> 00:08:52,799 that if 'num' equals to 1, why should we check unnecessarily 149 00:08:52,799 --> 00:08:56,600 all these conditions? Anyway by default all are 'False' if your 150 00:08:56,600 --> 00:09:00,300 number equals to 1. Even though if your number equals 151 00:09:00,300 --> 00:09:03,500 to 1 unnecessarily you are checking all these conditions, because 152 00:09:03,500 --> 00:09:10,200 all are separate 'if' conditions. If you remember we have 'if-elif' 153 00:09:10,200 --> 00:09:14,500 condition. What is the usage of that? Nothing is there. 154 00:09:14,500 --> 00:09:19,400 If I add in this way, 'elif', then the entire 'if', 155 00:09:19,400 --> 00:09:23,400 is one 'if' condition only. This entire logic is one 'if' condition 156 00:09:23,400 --> 00:09:28,000 only. Let me add it first, 'elif'. Then I will explain. 157 00:09:28,000 --> 00:09:31,800 [no audio] 158 00:09:31,800 --> 00:09:35,800 So now the meaning for this is, you have only one 'if' condition. 159 00:09:36,100 --> 00:09:39,800 This entire thing is like one 'if' condition now. Previously 160 00:09:39,900 --> 00:09:42,700 all are separate 'if' conditions, there is no relation between 161 00:09:42,700 --> 00:09:46,100 any two of your 'if' conditions previously. 162 00:09:46,300 --> 00:09:50,200 But now, this entire, from 2 - 23rd line, the entire 163 00:09:50,200 --> 00:09:54,600 thing is one 'if' condition, but this is 'if-elif' condition. 164 00:09:55,300 --> 00:10:00,100 Now how it will work? See, because of by adding 'elif' your 165 00:10:00,100 --> 00:10:04,900 all 'if' conditions, are treated as one 'if' condition by your 166 00:10:04,900 --> 00:10:08,300 Python. Then what is the advantage of writing in this way, 167 00:10:08,900 --> 00:10:11,700 is, let me explain with same 'num' as 1. 168 00:10:12,600 --> 00:10:14,900 'if num==1', what will happen? 169 00:10:16,200 --> 00:10:17,900 First 'if', by default your Python will 170 00:10:17,900 --> 00:10:20,300 check this 'if' condition, 'num==1'. 171 00:10:20,300 --> 00:10:22,100 Yes, 'True'. If it is 'True', 172 00:10:22,400 --> 00:10:26,400 your Python will execute this line. Your 'if' will allow 173 00:10:26,400 --> 00:10:31,000 to execute this line, and if any one of the conditions, here 174 00:10:31,000 --> 00:10:32,500 first condition itself it is 'True'. 175 00:10:32,500 --> 00:10:33,800 That's why by default, 176 00:10:33,800 --> 00:10:36,500 your Python is going to skip all these conditions without 177 00:10:36,500 --> 00:10:42,300 checking. That is the advantage if you club all your 'if' conditions. 178 00:10:43,100 --> 00:10:45,200 So that you are going to save your execution time, right? 179 00:10:45,300 --> 00:10:47,300 Unnecessarily you're not going to check remaining conditions. 180 00:10:47,600 --> 00:10:50,500 If very first condition is 'True', then definitely we know 181 00:10:50,500 --> 00:10:51,900 that remaining all are 'False', 182 00:10:51,900 --> 00:10:53,400 why should we go and check them? 183 00:10:53,400 --> 00:10:55,400 [no audio] 184 00:10:55,400 --> 00:10:59,400 So to avoid that you have to write all your conditions, all 185 00:10:59,400 --> 00:11:02,900 'if' conditions as one 'if' condition. So that is possible by 186 00:11:02,900 --> 00:11:06,700 writing in this way, 'if-elif-elif-elif-elif-elif', 187 00:11:06,700 --> 00:11:08,900 this entire thing is now one 'if' condition. 188 00:11:10,300 --> 00:11:14,600 Now let me explain with some other number. Let me take my input is '3'. 189 00:11:14,900 --> 00:11:18,000 I am providing input as 3, then 3 is going to be stored in your 'num' 190 00:11:18,000 --> 00:11:21,800 variable, in this. So while executing 191 00:11:23,000 --> 00:11:24,100 for first line you're 192 00:11:24,100 --> 00:11:27,300 providing number 3. Then first line, execution of your 193 00:11:27,300 --> 00:11:30,500 first line is over. Now in your 'num' variable 194 00:11:30,600 --> 00:11:34,000 the value is 3. Then immediately your Python will come to the second 195 00:11:34,000 --> 00:11:39,600 line, immediately. '3==1', 'False'. Because this is 'False'. 196 00:11:39,600 --> 00:11:41,400 Because this is 'False', 197 00:11:41,900 --> 00:11:46,200 that's why your Python is coming to next 'if' condition, next 198 00:11:46,200 --> 00:11:49,000 'elif' condition. This is 'False'. 199 00:11:49,000 --> 00:11:51,400 That's why Python is coming to 'elif' condition. 200 00:11:51,400 --> 00:11:53,700 So number three. '3==2'? 201 00:11:53,800 --> 00:11:56,300 No, 'False'. Again, it is a 'False' 202 00:11:56,300 --> 00:11:58,300 that's why we have one more 'elif', 203 00:11:58,300 --> 00:12:01,100 that's why your Python is coming to here and it is 204 00:12:01,100 --> 00:12:02,000 checking here. 205 00:12:02,600 --> 00:12:04,000 'num==3'? Yes, it's 'True'. 206 00:12:04,600 --> 00:12:05,600 This is true, 207 00:12:05,600 --> 00:12:07,000 your Python will execute, 208 00:12:07,000 --> 00:12:10,000 I mean your 'elif' will allow to execute this line. 209 00:12:10,700 --> 00:12:12,600 So now this condition is 'True', 210 00:12:12,600 --> 00:12:13,900 you are executing this line. 211 00:12:14,200 --> 00:12:18,100 So if condition is 'True', then your Python will skip remaining 212 00:12:18,100 --> 00:12:21,500 all conditions. Whether they are 'True' or 'False' your Python 213 00:12:21,500 --> 00:12:22,500 won't take care. 214 00:12:23,900 --> 00:12:27,100 If the first occurring condition is 'True', then remaining 215 00:12:27,100 --> 00:12:29,600 all conditions are going to skip without checking. 216 00:12:29,600 --> 00:12:31,600 [no audio] 217 00:12:31,600 --> 00:12:36,500 Right. So this is the advantage by clubbing your multiple 'if' conditions. 218 00:12:36,500 --> 00:12:39,400 [no audio] 219 00:12:39,400 --> 00:12:45,800 Right. So I think this is fine. Now, here also I can reduce one more 220 00:12:45,800 --> 00:12:49,300 'elif' condition. Guys, just assume that. Assume that 221 00:12:51,000 --> 00:12:55,400 this condition, second, third, fourth, fifth, sixth, seventh, eighth, 222 00:12:55,400 --> 00:12:59,000 ninth and tenth, if all are 'False', then what is the meaning for that? 223 00:13:00,200 --> 00:13:02,600 Definitely your number is not equal to 1 or 2 or 3 224 00:13:02,600 --> 00:13:05,500 or 4 or 5 or 7 or 7 or 8 or 9 or 10. 225 00:13:06,400 --> 00:13:08,400 Your number is out of 10 range. 226 00:13:09,300 --> 00:13:12,700 So why should we check this? If all conditions are 'False', by 227 00:13:12,700 --> 00:13:15,300 default we can say that, "Number is out of range". 228 00:13:16,600 --> 00:13:20,900 That's why, without writing your 'elif', simply you can write 229 00:13:20,900 --> 00:13:23,300 in place of this line, simply 'else' 230 00:13:23,300 --> 00:13:26,500 you can write it, 'else' you can write it. 231 00:13:28,100 --> 00:13:32,500 If you want to keep it as 'elsif: ', "Your number not in 232 00:13:32,600 --> 00:13:33,600 group of values". 233 00:13:33,600 --> 00:13:34,700 No problem. That's fine. 234 00:13:35,600 --> 00:13:39,700 But we know that if all first ten conditions are 'False' means 235 00:13:39,700 --> 00:13:43,400 definitely your number is not in the range of 1 to 10. Then 236 00:13:43,400 --> 00:13:45,000 no need to check condition again. Directly 237 00:13:45,000 --> 00:13:48,400 you can say that if all above conditions are 'False', then 238 00:13:48,400 --> 00:13:50,500 you can say that, "your number is out of range. 239 00:13:50,500 --> 00:13:52,400 Please select between 1 to 10 range." 240 00:13:53,700 --> 00:13:56,400 Right. So guys the 'else' is your optional. 241 00:13:57,100 --> 00:14:00,000 So you have to remember that. When 'else' will execute means, 242 00:14:00,100 --> 00:14:03,400 if all above conditions are 'False' then only your 'else' will 243 00:14:03,400 --> 00:14:06,200 execute, otherwise it won't execute. 244 00:14:07,300 --> 00:14:08,500 Right. And you have to 245 00:14:08,500 --> 00:14:12,200 remember one more thing, while executing your 'if-elif' condition, 246 00:14:13,200 --> 00:14:16,400 if any one of the condition is 'True', then your Python will 247 00:14:16,400 --> 00:14:19,500 execute the lines which are there under that particular 'if' 248 00:14:19,500 --> 00:14:25,200 condition, and remaining all will skip, all will skip. They 249 00:14:25,200 --> 00:14:28,400 won't execute. They won't even be touched by your Python. 250 00:14:30,100 --> 00:14:32,100 In this way you're going to save your execution time. 251 00:14:33,500 --> 00:14:40,200 Right. Fine. And guys, if it is fine, then it's okay. Here also 252 00:14:40,200 --> 00:14:41,800 there is one disadvantage. 253 00:14:42,200 --> 00:14:43,200 What is that? 254 00:14:43,200 --> 00:14:45,100 [no audio] 255 00:14:45,100 --> 00:14:47,600 First of all let me execute this, and show you the result. 256 00:14:47,600 --> 00:14:53,300 [no audio] 257 00:14:53,300 --> 00:14:56,900 I am going to execute it, right. Sorry, not that. 258 00:14:56,900 --> 00:15:07,600 [no audio] 259 00:15:07,600 --> 00:15:11,200 I'm entering suppose let's say 4. Yes, you are getting "four". Now, 260 00:15:11,200 --> 00:15:12,900 I am entering some number 34. 261 00:15:13,100 --> 00:15:14,800 So, "your number out of range, 262 00:15:14,800 --> 00:15:16,900 please select between 1 to 10 range". 263 00:15:16,900 --> 00:15:18,700 [no audio] 264 00:15:18,700 --> 00:15:19,900 Right. Fine. 265 00:15:21,300 --> 00:15:24,900 Guys, as of now this script is also perfectly correct, but 266 00:15:26,500 --> 00:15:31,000 if your number is out of 10 how is your execution happening? 267 00:15:31,000 --> 00:15:32,000 Just check it once. 268 00:15:33,100 --> 00:15:35,900 So let us assume your number variable, 269 00:15:35,900 --> 00:15:39,400 I mean from command line for this line you're providing number 270 00:15:39,400 --> 00:15:40,400 as some 12. 271 00:15:41,600 --> 00:15:46,100 If it is 12, right, how is your Python going to execute your 272 00:15:46,100 --> 00:15:50,400 if-else condition? From top to down. Immediately after reading 273 00:15:50,400 --> 00:15:53,900 your number Python is coming to your first 'if' condition. So 274 00:15:53,900 --> 00:15:57,000 it is going to verify, your given number is equal to 1? 275 00:15:57,000 --> 00:15:59,400 No, 'False'. So this is 'False', 276 00:15:59,500 --> 00:16:01,800 that's why your Python is coming to next 'elif'. 277 00:16:03,100 --> 00:16:05,300 Number equals to 2? No, 'False'. Then again 278 00:16:05,300 --> 00:16:08,500 your Python will go to next 'elif'. Number equals to 3? 279 00:16:08,500 --> 00:16:09,700 No, 'False'. Again, 280 00:16:09,700 --> 00:16:11,500 it will go to next. Likewise, 281 00:16:11,500 --> 00:16:12,900 it is coming to last. 282 00:16:14,300 --> 00:16:17,400 Then suppose here the number equal to 10? 283 00:16:17,500 --> 00:16:21,700 No, because your number is 12. Then next your Python is trying 284 00:16:21,700 --> 00:16:24,500 to execute next 'elif' or 'else' condition, 285 00:16:24,500 --> 00:16:26,900 but as of now, if it is 'else' you don't have any condition. 286 00:16:27,200 --> 00:16:29,400 If you don't have any condition, by default this line will 287 00:16:29,400 --> 00:16:34,000 execute. So that if all are 'False' then only by default 288 00:16:34,000 --> 00:16:35,600 your last line will execute. 289 00:16:35,800 --> 00:16:37,400 Yes, in this way it is working. 290 00:16:38,700 --> 00:16:41,400 Now, I have an idea. That is, 291 00:16:41,400 --> 00:16:43,300 [no audio] 292 00:16:43,300 --> 00:16:47,800 so if number is out of 10 range then unnecessarily you're checking 293 00:16:47,800 --> 00:16:50,500 all these conditions, right, all these conditions, 294 00:16:50,500 --> 00:16:54,300 then you are deciding number is out of range. After verifying 295 00:16:54,500 --> 00:16:57,900 all these conditions, after that only, you are deciding your 296 00:16:57,900 --> 00:16:59,300 number is out of range. 297 00:16:59,400 --> 00:17:03,400 That's why what I am doing is, see that, I am writing one advanced way 298 00:17:03,400 --> 00:17:05,400 [no audio] 299 00:17:05,400 --> 00:17:07,900 this script. Let me comment this one, entire thing. 300 00:17:08,900 --> 00:17:13,598 Right. Just assume you're reading a number. So I am also going 301 00:17:13,500 --> 00:17:14,500 to comment this line. 302 00:17:14,500 --> 00:17:16,500 [no audio] 303 00:17:16,500 --> 00:17:19,200 So I will write once again that line at last. 304 00:17:20,098 --> 00:17:22,800 So assume that you commented your previous script. Now, we 305 00:17:22,800 --> 00:17:26,598 are going to write new script in the same program, right? 306 00:17:27,000 --> 00:17:30,300 I am reading a number. At the very first itself 307 00:17:30,300 --> 00:17:36,400 I am checking, that is 'if', if your number not in the range 308 00:17:36,400 --> 00:17:46,400 of 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, then if it is not, then if it is not in the range, 309 00:17:46,599 --> 00:17:47,800 otherwise I will check it. 310 00:17:47,900 --> 00:17:51,700 If your number in this range, then only I will 311 00:17:51,700 --> 00:17:54,800 try to convert your number into word, right? 312 00:17:54,800 --> 00:17:56,300 So here I will write a logic. 313 00:17:56,300 --> 00:17:58,300 [no audio] 314 00:17:58,300 --> 00:18:05,000 "Converting your num into word", but I'm not writing that 315 00:18:05,000 --> 00:18:09,500 logic. We will see it. 'else' means, when 'else' will execute? If 316 00:18:09,500 --> 00:18:13,100 your number is not in the given range, then only 'else' will execute, 317 00:18:13,300 --> 00:18:16,100 then I can say, "out of range number. 318 00:18:17,900 --> 00:18:18,900 Please select 319 00:18:18,900 --> 00:18:21,100 [no audio] 320 00:18:21,100 --> 00:18:24,400 1 to 10 range". That's it. 321 00:18:24,400 --> 00:18:26,400 [no audio] 322 00:18:26,400 --> 00:18:30,400 See here, simple. Simple thing is, just assume you are entering 323 00:18:30,400 --> 00:18:34,400 number as 12. So previously whenever if we enter number 12 324 00:18:34,400 --> 00:18:36,600 you are checking 10 conditions, 325 00:18:36,600 --> 00:18:40,100 after that you are verifying 12 is not out of, 12 326 00:18:40,100 --> 00:18:41,400 is out of range number. 327 00:18:42,900 --> 00:18:46,400 See here guys, previously if number is 12, 328 00:18:46,400 --> 00:18:48,600 first of all you're checking all these conditions, 329 00:18:48,800 --> 00:18:50,800 then you are deciding number is out of range. 330 00:18:50,800 --> 00:18:53,900 But now what I am doing is first step itself I am trying 331 00:18:53,900 --> 00:18:57,100 to check whether the given number is there in the list of 332 00:18:57,100 --> 00:18:58,200 10 numbers or not. 333 00:18:59,000 --> 00:19:02,200 If it is there, then I will try to write a logic here to convert 334 00:19:02,200 --> 00:19:03,300 your number into word. 335 00:19:04,300 --> 00:19:08,600 In case if this is 'False', means your number is not in the 336 00:19:08,600 --> 00:19:10,800 given range of values. 337 00:19:11,400 --> 00:19:13,700 That's why 'else' block is going to execute. 338 00:19:13,900 --> 00:19:16,900 It's very simple no. Only with two steps 339 00:19:16,900 --> 00:19:19,700 you are deciding whether a number is valid number or not. 340 00:19:20,000 --> 00:19:24,500 But in previous, you are deciding a number is not valid number 341 00:19:24,700 --> 00:19:26,600 after checking 10 conditions. 342 00:19:27,000 --> 00:19:30,200 So unnecessarily you're going to waste your execution time. 343 00:19:31,800 --> 00:19:34,300 Right. But here you are saving that. Let me do that. 344 00:19:34,900 --> 00:19:39,800 I mean, let me execute your code. 'python number_to_word'. 345 00:19:40,200 --> 00:19:44,000 I'm entering number 45. You're getting, "your number out of range. 346 00:19:44,000 --> 00:19:48,000 Please select number between 1 to 10 range". Right. Now 347 00:19:48,000 --> 00:19:49,200 I am entering suppose 3 348 00:19:49,200 --> 00:19:52,800 [no audio] 349 00:19:52,800 --> 00:19:54,300 Guys, did we save this? 350 00:19:54,600 --> 00:19:56,200 I'm not sure. Let me save it. 351 00:19:57,600 --> 00:20:02,700 Yeah. Now let me give 45 number. "out of range number. 352 00:20:02,700 --> 00:20:04,500 Please select 1 to 10 range. 353 00:20:05,200 --> 00:20:09,900 Now, I am giving a valid number, suppose between 1 to 10 range 354 00:20:09,900 --> 00:20:12,900 number, 4. "converting your number into word". But you have 355 00:20:12,900 --> 00:20:16,100 to write logic there to convert your number into four. If it 356 00:20:16,100 --> 00:20:17,300 is a valid number already 357 00:20:17,300 --> 00:20:19,900 we have a logic to convert that, right. Already 358 00:20:19,900 --> 00:20:23,900 we have a logic to convert that. So what I have to do is now, 359 00:20:24,300 --> 00:20:27,300 now, instead of 'print' statement 360 00:20:27,500 --> 00:20:31,300 inside of your 'if' condition I have to write one more 'if' condition, 361 00:20:31,300 --> 00:20:34,500 because directly if number is a valid number directly 362 00:20:34,500 --> 00:20:38,800 I can't say that it is a 1, it is a 2, it is a 3, right. Again 363 00:20:38,800 --> 00:20:43,700 what I have to do? See that. 'print("one")', but when I have to 364 00:20:43,700 --> 00:20:48,500 print this "one"? 'if', guys I'm writing inside 'if' one more 365 00:20:48,500 --> 00:20:54,300 'if'. 'If num==1'. That's it. 366 00:20:54,400 --> 00:20:57,000 So inside of that 'if' condition you have to write 'print("one")'. 367 00:20:58,100 --> 00:21:01,500 So just try to execute. If you don't give space here what 368 00:21:01,500 --> 00:21:03,800 will happen? You just try it, so that you can understand 369 00:21:03,800 --> 00:21:05,100 why should we give space. 370 00:21:06,100 --> 00:21:08,900 First of all, this is main 'if' condition. With this you are 371 00:21:08,900 --> 00:21:12,700 validating whether given number is there in the given range 372 00:21:12,700 --> 00:21:13,800 of values or not. 373 00:21:14,300 --> 00:21:18,200 If it is in the range of values, then it's like in this way 374 00:21:18,200 --> 00:21:22,800 guys. Just assume you have your house. 375 00:21:23,400 --> 00:21:26,700 This is main door. Once if we enter into main door, there 376 00:21:26,700 --> 00:21:27,700 are some rooms. 377 00:21:29,200 --> 00:21:30,700 Again, you have to enter into this room. 378 00:21:31,100 --> 00:21:33,000 So to enter into this room again you have a key. 379 00:21:33,000 --> 00:21:34,000 You should have a key. 380 00:21:34,000 --> 00:21:35,900 That's what we are doing here. First 381 00:21:35,900 --> 00:21:40,400 I am checking whether I am in this group or not. Yes, 382 00:21:40,700 --> 00:21:43,800 I have a key for my main room, home. 383 00:21:43,900 --> 00:21:48,000 Yes, I'm entering. After entering based on your number, if it is 1, 384 00:21:48,000 --> 00:21:50,500 you have to print "one", if it is 2, you have to print "two". Right. 385 00:21:50,600 --> 00:21:55,100 That's why what I am doing is 'elif num==2:' 386 00:21:55,100 --> 00:22:01,600 then 'print("two")'. Likewise you just complete up to 10. I'm 387 00:22:01,600 --> 00:22:03,400 not writing up to 10, you can write it. 388 00:22:05,100 --> 00:22:08,400 Right. So if you want I can do it. 389 00:22:09,900 --> 00:22:11,500 So likewise, you have to write up to 10 guys. 390 00:22:11,500 --> 00:22:14,600 You just try to practice in that way. That's it. 391 00:22:14,600 --> 00:22:16,600 [no audio] 392 00:22:16,600 --> 00:22:19,100 Right. Let me write it. Here also I have to provide, 393 00:22:19,100 --> 00:22:20,600 I have to give one important point. 394 00:22:20,600 --> 00:22:21,600 Let me write it. 395 00:22:21,600 --> 00:22:29,200 [no audio] 396 00:22:29,200 --> 00:22:30,200 Sorry. 397 00:22:31,500 --> 00:22:34,800 So guys while writing your Python scripts indentation or 398 00:22:34,800 --> 00:22:36,900 providing space is very, very important. 399 00:22:36,900 --> 00:22:43,600 [no audio] 400 00:22:43,600 --> 00:22:45,300 It's a six. 401 00:22:45,300 --> 00:22:47,700 [no audio] 402 00:22:47,700 --> 00:22:48,800 Okay. Let me write it, 403 00:22:48,800 --> 00:22:57,800 [no audio] 404 00:22:57,800 --> 00:23:02,200 'elif num==8: 405 00:23:03,800 --> 00:23:05,600 'print("eight")'. 406 00:23:06,400 --> 00:23:10,900 'elif num==9' 407 00:23:10,900 --> 00:23:12,900 [no audio] 408 00:23:12,900 --> 00:23:19,300 'print("nine")'. Then I have to write once again, right, your 'elif', 409 00:23:20,100 --> 00:23:24,800 'if num==10:' 'print("ten")'. 410 00:23:24,800 --> 00:23:26,300 Yes, this is perfectly correct. 411 00:23:26,300 --> 00:23:27,400 It will work definitely. 412 00:23:27,600 --> 00:23:29,000 Okay. Let me go and run it. 413 00:23:30,500 --> 00:23:32,600 I'm entering number called 8. You are getting output 414 00:23:32,600 --> 00:23:35,400 "eight". If I enter any number out of range you are getting, "out 415 00:23:35,400 --> 00:23:37,800 of range number, please select 1 to 10 range". 416 00:23:38,600 --> 00:23:41,900 That is fine. Now this script, compared to all your previous 417 00:23:41,900 --> 00:23:43,900 scripts this is somewhat enhanced script. 418 00:23:45,300 --> 00:23:48,600 But guys if you observe when you are entering into your first 419 00:23:48,600 --> 00:23:51,500 'if' condition, assume that in your first 'if' condition this is a room. 420 00:23:51,500 --> 00:23:54,600 [no audio] 421 00:23:54,600 --> 00:23:57,700 So you are entering into this room if your number 422 00:23:57,700 --> 00:24:00,100 is there in this list of values. 423 00:24:01,300 --> 00:24:04,600 Right. Let's say you are entering number called 10. 424 00:24:04,600 --> 00:24:06,600 [no audio] 425 00:24:06,600 --> 00:24:08,700 Yes, 10 is there in the list, that's why you are able to enter 426 00:24:08,700 --> 00:24:10,800 into this room. After entering into this room, 427 00:24:10,900 --> 00:24:12,600 if number is 10 you have to print "ten". 428 00:24:12,600 --> 00:24:16,300 That's why this is 'if-elif' condition. Your python will check first 429 00:24:16,300 --> 00:24:19,100 'if' condition. Right. Python will check first 430 00:24:19,100 --> 00:24:21,400 'if' condition. You are providing number as 10. 431 00:24:22,100 --> 00:24:23,800 '10==1'? No, 'False'. 432 00:24:23,800 --> 00:24:27,200 That's why python will come and check this one, 'num==2'. 433 00:24:27,200 --> 00:24:29,500 No, 'False'. Then likewise, 434 00:24:31,100 --> 00:24:32,800 assume 'num==9'. 435 00:24:32,800 --> 00:24:35,600 No, 'False'. Then come here, 'num==10' 436 00:24:35,600 --> 00:24:36,600 Yes, you are printing. 437 00:24:37,800 --> 00:24:43,800 So guys, if all these conditions are 'False' up to 9, then definitely 438 00:24:43,800 --> 00:24:46,200 your remaining number is 10 only, right? 439 00:24:46,800 --> 00:24:49,600 Because first of all you're able to enter into this if your 440 00:24:49,600 --> 00:24:53,400 number is within this range, 1 to 10, and if your first nine 441 00:24:53,400 --> 00:24:58,400 conditions are 'False' then by default the last number is, if 442 00:24:58,400 --> 00:25:01,000 first nine conditions are 'False', then definitely you can 443 00:25:01,000 --> 00:25:05,400 say number is 10. Then no need to check this last condition. 444 00:25:06,000 --> 00:25:08,400 Of course, if you write in this way that is perfectly correct, 445 00:25:09,000 --> 00:25:13,000 but what I am saying, if all these nine conditions are false, 446 00:25:13,000 --> 00:25:16,000 then definitely your number is 10, there is no doubt in that. 447 00:25:16,000 --> 00:25:19,300 That's why what I am doing, I am not checking. 448 00:25:19,500 --> 00:25:20,800 I'm not checking. Simply, 449 00:25:20,800 --> 00:25:23,800 I'm writing 'else' block, that is good actually. 450 00:25:24,200 --> 00:25:27,400 So, you know, when 'else' will execute. If all above conditions are 451 00:25:27,400 --> 00:25:32,000 'False' then only it will execute. We know that if all are 'False' 452 00:25:32,000 --> 00:25:33,400 then definitely number is 10. 453 00:25:33,400 --> 00:25:36,100 That's why I am printing 10. That's it. 454 00:25:36,100 --> 00:25:38,100 [no audio] 455 00:25:38,100 --> 00:25:40,300 Right. See that. It will work perfectly. 456 00:25:40,600 --> 00:25:41,900 Let me enter number 10. 457 00:25:42,400 --> 00:25:44,800 Yes. Let me enter number some 23, 458 00:25:45,800 --> 00:25:49,900 or some 4, it's working. Right. Fine. 459 00:25:51,100 --> 00:25:53,500 Still I have very, very 460 00:25:53,500 --> 00:25:56,000 [no audio] 461 00:25:56,000 --> 00:26:01,700 useful way of writing for this requirement. 462 00:26:03,300 --> 00:26:08,300 Still I have one more enhanced way to write this script. Maybe 463 00:26:08,300 --> 00:26:11,800 you may not get that idea as of now, but once if you see whenever 464 00:26:11,800 --> 00:26:14,300 if you get that type of situations, definitely you will get this 465 00:26:14,300 --> 00:26:20,200 idea. So what is that? Right. See what is that. Let me comment 466 00:26:20,200 --> 00:26:25,200 this code first. See now, as of now to display your number 1 to 467 00:26:25,200 --> 00:26:27,200 10 range, how many lines you are writing? 468 00:26:27,200 --> 00:26:29,200 [no audio] 469 00:26:29,200 --> 00:26:31,900 so from 27 to almost, 470 00:26:31,900 --> 00:26:38,100 let me delete empty lines, 50. That means almost 27 lines 471 00:26:38,100 --> 00:26:42,700 you're writing to display simply your number, numbers from 472 00:26:42,700 --> 00:26:43,800 1 to 10 range. 473 00:26:44,600 --> 00:26:48,200 But what I am doing is, once again I'm going to comment this code guys. 474 00:26:48,200 --> 00:26:50,400 [no audio] 475 00:26:50,400 --> 00:26:55,100 See that. What I am doing? First of all, before going to read 476 00:26:55,100 --> 00:26:58,000 your number or maybe after reading your number, no problem, 477 00:26:58,100 --> 00:27:00,500 the first thing is, you should read some number from your 478 00:27:00,500 --> 00:27:02,200 input. Yes, suppose assume that I am reading 479 00:27:02,200 --> 00:27:04,000 my number. After that, 480 00:27:04,600 --> 00:27:05,900 I am, after that 481 00:27:06,000 --> 00:27:09,500 I am defining my dictionary guys, my own dictionary. 482 00:27:09,700 --> 00:27:12,500 So what is the dictionary, how your dictionary will be there, 483 00:27:12,500 --> 00:27:16,700 we know that. A dictionary will have key-value pair representation. 484 00:27:17,100 --> 00:27:19,000 So now I am defining my dictionary in 485 00:27:19,200 --> 00:27:24,900 this way. Our number to word conversion dictionary, 'num_word=', 486 00:27:25,300 --> 00:27:28,200 dictionary should be always with curly braces, and with 487 00:27:28,200 --> 00:27:30,000 key-value pair representations. 488 00:27:30,600 --> 00:27:34,600 So I am taking key as number 1, and its value as "o-n-e", "one" 489 00:27:34,600 --> 00:27:37,000 So that is one key-value pair representation. 490 00:27:37,300 --> 00:27:38,500 Let me take second one. 491 00:27:40,200 --> 00:27:41,200 Then third one. 492 00:27:41,200 --> 00:27:45,000 [no audio] 493 00:27:45,000 --> 00:27:48,700 Guys, if you go through this, I mean this logic, current logic, 494 00:27:48,700 --> 00:27:50,300 then you will feel thrilled, 495 00:27:50,300 --> 00:27:53,100 [no audio] 496 00:27:53,100 --> 00:27:56,900 because it's very nice one and it's very useful one. 497 00:27:57,400 --> 00:27:58,300 Just observe this. 498 00:27:58,300 --> 00:28:03,000 Let me first create my dictionary with 1 to 10 as keys 499 00:28:03,200 --> 00:28:06,600 and values as words 'one' to 'ten', right? 500 00:28:06,600 --> 00:28:07,700 That's what I am writing here. 501 00:28:08,500 --> 00:28:10,500 'six', then let me write 'seven'. 502 00:28:12,200 --> 00:28:16,000 So guys, this concept is very, very useful in your real-time as well. 503 00:28:16,600 --> 00:28:19,600 So while writing our real-time scripts you will come to know 504 00:28:19,700 --> 00:28:23,300 the importance of defining your dictionary with key-value 505 00:28:23,300 --> 00:28:24,600 pair representations. 506 00:28:24,600 --> 00:28:29,800 [no audio] 507 00:28:29,800 --> 00:28:32,500 One second. The last one is ten, right. Yeah. 508 00:28:32,500 --> 00:28:37,800 [no audio] 509 00:28:37,800 --> 00:28:43,500 Right. Fine. Now assume that you are, by running the script 510 00:28:43,500 --> 00:28:45,800 what will happen? Because of 54th line 511 00:28:45,900 --> 00:28:48,600 you're reading a number, you will read some number. 512 00:28:48,800 --> 00:28:52,300 First of all, I'm validating whether number is a valid number or not. 513 00:28:52,300 --> 00:29:01,200 'if num in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:', 10 514 00:29:01,200 --> 00:29:04,100 [no audio] 515 00:29:04,100 --> 00:29:06,800 then I can say, 'print("valid number")'. 516 00:29:07,500 --> 00:29:09,100 First of all, let me write "valid number". 517 00:29:09,900 --> 00:29:11,600 If it is not in the given range, 518 00:29:11,600 --> 00:29:16,500 then I can say "please enter", "your number is", otherwise, "your 519 00:29:17,000 --> 00:29:21,900 number is out of range, please select 520 00:29:23,300 --> 00:29:26,800 1 to 10 range" That's it. 521 00:29:27,900 --> 00:29:32,400 So guys here previously to convert your number into word, 522 00:29:32,400 --> 00:29:35,200 you're writing some 'if-elif-elif' condition, but now 523 00:29:35,200 --> 00:29:39,100 I am not writing that because I have a dictionary. In my dictionary, 524 00:29:39,200 --> 00:29:41,400 I have a key and value pair representation. 525 00:29:41,600 --> 00:29:45,200 Now, what I am doing is simply I am printing my dictionary, 526 00:29:45,600 --> 00:29:49,000 my dictionary, 'num_word.get' 527 00:29:49,000 --> 00:29:51,000 [no audio] 528 00:29:51,000 --> 00:29:52,800 Get your key. 529 00:29:52,800 --> 00:29:54,700 Whatever the number you are providing, that number. 530 00:29:54,700 --> 00:29:55,700 I am placing here. 531 00:29:56,600 --> 00:29:58,100 Now, before running this script 532 00:29:58,200 --> 00:30:03,600 let me select this one, and I am going to Python terminal 533 00:30:03,600 --> 00:30:06,700 there I will show you first, so that you can easily understand. 534 00:30:06,700 --> 00:30:09,800 This is my dictionary, guys. 'num_word. 535 00:30:11,200 --> 00:30:13,000 get', I am providing. 536 00:30:14,500 --> 00:30:15,500 Right. I am providing 537 00:30:16,800 --> 00:30:20,800 1. See the result. Or I am taking 2. See the result. 538 00:30:22,400 --> 00:30:25,000 Now, whatever the input you are providing 539 00:30:25,000 --> 00:30:27,200 that is a number, right? 540 00:30:27,300 --> 00:30:32,000 So now what I am doing is, based on your input I am selecting 541 00:30:32,000 --> 00:30:34,200 the key-value from my dictionary. 542 00:30:34,600 --> 00:30:37,900 So you may enter 1, if you enter 1 you get 'one'. 543 00:30:38,600 --> 00:30:40,700 What is the 1 value? 'one', 'one, that 544 00:30:40,900 --> 00:30:43,100 we are displaying. It's very simple one, right? 545 00:30:44,800 --> 00:30:48,400 Let me save it, and run it, and see the magic. 546 00:30:51,000 --> 00:30:54,700 First of all, let me open your script. See the last lines. 547 00:30:56,200 --> 00:30:59,900 See only we have one, two, three, four, five, six lines. 548 00:30:59,900 --> 00:31:01,600 Instead of 27 lines 549 00:31:01,600 --> 00:31:03,300 now we have only six lines. 550 00:31:04,200 --> 00:31:06,100 Let me remove some empty lines here. 551 00:31:06,100 --> 00:31:09,000 [no audio] 552 00:31:09,000 --> 00:31:12,900 Let me save it and let me reopen your script here. 553 00:31:13,600 --> 00:31:15,400 Right. So this is your script guys. 554 00:31:17,000 --> 00:31:18,200 Now let me run it first, 555 00:31:18,400 --> 00:31:19,600 your 'number_to_word'. 556 00:31:20,400 --> 00:31:24,500 I'm entering suppose 4. You're getting output "four", no. See 557 00:31:25,100 --> 00:31:27,600 what will happen? Whenever if you enter number as 4, that 558 00:31:27,600 --> 00:31:32,000 4 is going to store into your 'num' variable, and you are checking. 559 00:31:32,100 --> 00:31:35,800 If anyway, this is just defining a variable value, right, dictionary. 560 00:31:36,100 --> 00:31:38,500 Then after that your Python will come and execute this one, 561 00:31:38,800 --> 00:31:41,300 'num', 4. 4 in this range? 562 00:31:41,300 --> 00:31:45,600 Yes. If it is in this range, what we are doing? 'print(num_word)', 563 00:31:45,600 --> 00:31:50,000 from your dictionary a key, key->1, with that key what is the value? 564 00:31:50,000 --> 00:31:52,600 That's what we are printing. Now, no need to take 'if-else' 565 00:31:52,600 --> 00:31:53,600 condition also here. 566 00:31:55,400 --> 00:32:00,900 Right. So guys, try to understand this simple magic. 567 00:32:00,900 --> 00:32:02,600 It's very useful in your real time. 568 00:32:02,600 --> 00:32:05,000 [no audio] 569 00:32:05,000 --> 00:32:07,600 Okay. Okay. 570 00:32:07,600 --> 00:32:09,900 Okay guys, thank you for watching this video. 571 00:32:09,900 --> 00:32:20,544 [no audio]