Python follows basic order of operations when evaluating expressions, similar to PEMDAS for math.
Data Types and Classifications đŠâđĢ
Using a single equals = is an assignment operator, where it assigns a value to a variable.
Using double equals == is a comparison operator, where it checks two values!
Flow Control đđ¤Ŋââī¸
Tons of different ways to control execution of the program. Fundamental way in how programs work and look like magic ⨠Until you realize that whitespace is interpreted. Make sure you use four spaces instead of tabs, just as God intended.
# if, elif, and else control!!ayyy ='lmao'# if statements check if a statement is trueif ayyy =='lmao':print('đŊđŊđŊ')# elif statments help determine one of many possible clauseseliflen(ayyy)==4:print('đđđđ')# can have have several elif, but skips any remaining elif after first Trueeliflen(ayyy)!=4:print('đ¤đ¤đ¤')# else statements is executed ONLY if the preceeding if is False (NOT REQUIRED!)else:print('âđŊâ')
There are while loops which will check for a condition and keep executing until completed. Using break will exit the while loop early! Similarly, continue statements will jump back to the beginning of a while loop and evaluate the loop's condition.
# while loops will execute until a condition is metcount =0while count <5:print('ayyy') count = count +1print('lmao')name =''while name !='your name':print('Please type your name') name =input()# break statements exit the while loop's clause early, continue jump to start of whilename =''whileTrue:print('Please type your name') name =input()if name !='your name':continueprint('What\'s the password?')pass=input()ifpass='ayyylmao':breakprint('Well done!')
Another loop is the for loop which can repeat an action a specific amount of times. When using range we can also specify start, stop, and steps.
ayyy ='lmao'# Print the var ayyy five timesfor i inrange(5):print(ayyy)# Print the value of i between two valuesfor i inrange(12, 15):print(i)# Similar, only with a step!for i inrange(0, 10, 2):print(i)
Strings đ§ĩ
We can take a string of any length and reference ANY part of it!
lmao ='holy hell'# Print first character of string lmaoprint(lmao[0])# Print last character of string lmaoprint(lmao[-1])# Print entire string backwards!print(lmao[::-1])# Split string on a delimeter, default is spacehaha = lmao.split()print(haha)# Replace certain parts of a stringprint(lmao.replace('h','') # prints 'hoy he'
Lists đđ
ans = ['H','E','L','L','O']print(''.join(ans))# Will print HELLO
Comprehension
Search for a partial match in a list and add to another list. Super useful!
origList = ['big','bad','bigly']subStr ='ig'filterList = [string for string in origList if subStr in string]
Tuples
Dictionaries đđ
Very similar to JSON. In fact, so close, it can be converted to JSON with minor worries!
# Create the dict typelmao ={'one':1,'two':2}# Add a new key to the dictionarylmao['three']=3# Loop over each pair of keys and values to accessfor i, k inenumerate(lmao):print(i, k)# Will print:# one 1# two 2# three 3
User Inputs
Loops
from string import ascii_lowercasefor a in ascii_lowercase:for b in ascii_lowercase:print(a+b)
Arithmetic and Conditionals
Regex Matching
Convert bytes to IPv4
ipaddr ='.'.join(f'{c}'for c in line['ipAddress'])