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'])