Basic is complete

This commit is contained in:
2025-03-09 11:54:48 +00:00
parent 46caa0dbad
commit eef8158e96

View File

@@ -138,3 +138,160 @@
true or true : first is evaluated true or true : first is evaluated
false or true : both are evaluated false or true : both are evaluated
false or false : both are evaluated false or false : both are evaluated
-> Multiple logical operator in one statement:
for ex:
a < b > c < d
-> is v/s == :
== : It checks if the value on both side are same. Both
side should of same value and type to equate to true.
is : It check if the location where the value is stored
same for both side.
-> Type conversion:
Some operands cannot be compared because of their incompatible type
and even type conversion will also not be allowed as it would make
sence.
Note: keep in mind what could be compared and what couldn't be.
-> What is a iterable?
for item in 'Zero to mastery'
^
|
This is a iterable.
Anything which can be looped through is a iterable.
Iterable is an object or a collection which can be iterable over.
#iterable - list, dictionary, tuple, set, string.
-> To iterate in reverse using for loop:
for ex:
for x in range(10, 0 , -1):
-> while loop with else:
for ex:
while <condition>:
....Statement....
else:
....Statement....
This else part is executed only when the while condition fails.
-> pass keyword:
pass keyword doesn't do anything. It's just a dummy statement.
For example, when we don't what to do inside for loop but still
want to run the program without throwing error we can use "pass"
keyword to do nothing indicating some other might replace it later.
-> nested functions:
User-defined function in python can have function defined inside
another function and its scope is limited that function itself.
for ex:
def function1():
def function2():
-> Docstring:
This can be used inside function to write it as comment
and mention what the function can do. It's just like a comment.
for ex:
def function():
'''
What function can do.
'''
To print the Docstring. use help(<function-name>) or <fucntion-name>.__doc__
which is a dunder function.
-> *args && **kwargs:
*args : It's just like variable argument in C/C++ (var_arg).
for ex:
def fun(*args):
print(args)
-> args : It stores the number of argument as a tuple.
**kwargs : It stores argument with keywords. It stores it like a
dictionary.
#Rule: params, *args, default parameters, **kwargs
name , *args, i = 'hi' , **kwargs
-> Walrus operator (:=):
for ex:
if n := len(a) > 0:
...do something...
"n = len(a)" is not allowed in python.
So, to achieve this we use := operator.
-> Scope in Python:
Different function have different scope.
If and other things use global scope.
Order to check the scope of variable:
#1 - start with local.
#2 - Parent local?
#3 - global
#4 - built in python functions.
-> global keyword:
Use this to access global variable in a function scope.
for ex:
total = 0
def count():
global total
total += 1
return 1
-> nonlocal keyword:
This is the very latest feature of feature
To access the non-local variable which is not present
in the local scope of the function but is present in the
scope of parent function, in case of nested function.
for ex:
def outer():
x = "local"
def inner():
nonlocal x
x = "nonlocal"
print("inner:", x)
inner()
print("outer:", x)
outer()