\documentclass[10pt,a4paper]{article}

% Packages
\usepackage{fancyhdr}           % For header and footer
\usepackage{multicol}           % Allows multicols in tables
\usepackage{tabularx}           % Intelligent column widths
\usepackage{tabulary}           % Used in header and footer
\usepackage{hhline}             % Border under tables
\usepackage{graphicx}           % For images
\usepackage{xcolor}             % For hex colours
%\usepackage[utf8x]{inputenc}    % For unicode character support
\usepackage[T1]{fontenc}        % Without this we get weird character replacements
\usepackage{colortbl}           % For coloured tables
\usepackage{setspace}           % For line height
\usepackage{lastpage}           % Needed for total page number
\usepackage{seqsplit}           % Splits long words.
%\usepackage{opensans}          % Can't make this work so far. Shame. Would be lovely.
\usepackage[normalem]{ulem}     % For underlining links
% Most of the following are not required for the majority
% of cheat sheets but are needed for some symbol support.
\usepackage{amsmath}            % Symbols
\usepackage{MnSymbol}           % Symbols
\usepackage{wasysym}            % Symbols
%\usepackage[english,german,french,spanish,italian]{babel}              % Languages

% Document Info
\author{Kim\_m}
\pdfinfo{
  /Title (python-cheat-sheet-kim.pdf)
  /Creator (Cheatography)
  /Author (Kim\_m)
  /Subject (Python  Kim Cheat Sheet)
}

% Lengths and widths
\addtolength{\textwidth}{6cm}
\addtolength{\textheight}{-1cm}
\addtolength{\hoffset}{-3cm}
\addtolength{\voffset}{-2cm}
\setlength{\tabcolsep}{0.2cm} % Space between columns
\setlength{\headsep}{-12pt} % Reduce space between header and content
\setlength{\headheight}{85pt} % If less, LaTeX automatically increases it
\renewcommand{\footrulewidth}{0pt} % Remove footer line
\renewcommand{\headrulewidth}{0pt} % Remove header line
\renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit
% This two commands together give roughly
% the right line height in the tables
\renewcommand{\arraystretch}{1.3}
\onehalfspacing

% Commands
\newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour
\newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols
\newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns
\newcommand{\tn}{\tabularnewline} % Required as custom column type in use

% Font and Colours
\definecolor{HeadBackground}{HTML}{333333}
\definecolor{FootBackground}{HTML}{666666}
\definecolor{TextColor}{HTML}{333333}
\definecolor{DarkBackground}{HTML}{2FE1F5}
\definecolor{LightBackground}{HTML}{E5FBFD}
\renewcommand{\familydefault}{\sfdefault}
\color{TextColor}

% Header and Footer
\pagestyle{fancy}
\fancyhead{} % Set header to blank
\fancyfoot{} % Set footer to blank
\fancyhead[L]{
\noindent
\begin{multicols}{3}
\begin{tabulary}{5.8cm}{C}
    \SetRowColor{DarkBackground}
    \vspace{-7pt}
    {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent
        \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}}
    }
\end{tabulary}
\columnbreak
\begin{tabulary}{11cm}{L}
    \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{Python  Kim Cheat Sheet}}}} \\
    \normalsize{by \textcolor{DarkBackground}{Kim\_m} via \textcolor{DarkBackground}{\uline{cheatography.com/25888/cs/7004/}}}
\end{tabulary}
\end{multicols}}

\fancyfoot[L]{ \footnotesize
\noindent
\begin{multicols}{3}
\begin{tabulary}{5.8cm}{LL}
  \SetRowColor{FootBackground}
  \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}}  \\
  \vspace{-2pt}Kim\_m \\
  \uline{cheatography.com/kim-m} \\
  \end{tabulary}
\vfill
\columnbreak
\begin{tabulary}{5.8cm}{L}
  \SetRowColor{FootBackground}
  \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}}  \\
   \vspace{-2pt}Published 12th February, 2016.\\
   Updated 13th May, 2016.\\
   Page {\thepage} of \pageref{LastPage}.
\end{tabulary}
\vfill
\columnbreak
\begin{tabulary}{5.8cm}{L}
  \SetRowColor{FootBackground}
  \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}}  \\
  \SetRowColor{white}
  \vspace{-5pt}
  %\includegraphics[width=48px,height=48px]{dave.jpeg}
  Measure your website readability!\\
  www.readability-score.com
\end{tabulary}
\end{multicols}}




\begin{document}
\raggedright
\raggedcolumns

% Set font size to small. Switch to any value
% from this page to resize cheat sheet text:
% www.emerson.emory.edu/services/latex/latex_169.html
\footnotesize % Small font.

\begin{multicols*}{3}

\begin{tabularx}{5.377cm}{x{1.29402 cm} x{3.68298 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Vocabulary}}  \tn
% Row 0
\SetRowColor{LightBackground}
Variable & Hold a value and can be change \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
String & A list of character such as number, letter andsymbols \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
Integer Number & Whole number/counting number \tn 
% Row Count 6 (+ 2)
% Row 3
\SetRowColor{white}
Float Number & The number in decimal \tn 
% Row Count 8 (+ 2)
% Row 4
\SetRowColor{LightBackground}
Syntax & Grammar /structure \tn 
% Row Count 9 (+ 1)
% Row 5
\SetRowColor{white}
Modulo & Find the remainder \tn 
% Row Count 10 (+ 1)
% Row 6
\SetRowColor{LightBackground}
Boolean & true/False \tn 
% Row Count 11 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{2.23965 cm} x{2.73735 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Addition}}  \tn
% Row 0
\SetRowColor{LightBackground}
string+string & Combine together \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
string+number & CRASH! \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
Number+number & Addition(Math) \tn 
% Row Count 3 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Reverse}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\#Finish this program so that it gets a word from the user and prints \newline % Row Count 2 (+ 2)
\#that word backwards \newline % Row Count 3 (+ 1)
reverse = "" \#do not change \newline % Row Count 4 (+ 1)
letter\_num = 0 \#do not change \newline % Row Count 5 (+ 1)
word = input("Please enter a word: ")\#get a word from the user \newline % Row Count 7 (+ 2)
''' \newline % Row Count 8 (+ 1)
while letter\_num \textless{} len(word):\#compare the letter\_num to the lenght of the word \newline % Row Count 10 (+ 2)
    reverse = word{[}letter\_num{]}+reverse\#kepp adding the letter to the front of reverse \newline % Row Count 12 (+ 2)
    letter\_num = letter\_num+1\#go to the next letter in the word \newline % Row Count 14 (+ 2)
''' \newline % Row Count 15 (+ 1)
    for lette in word   : \newline % Row Count 16 (+ 1)
        reverse = letter + revers \newline % Row Count 17 (+ 1)
print ("Reverse: ",reverse) \newline % Row Count 18 (+ 1)
\#creating list \newline % Row Count 19 (+ 1)
mylist = {[}1,2,3,4,5,6{]} \newline % Row Count 20 (+ 1)
mylist2 = {[}'hi', 'hello','anything'{]} \newline % Row Count 21 (+ 1)
mylist3 = {[}1, 'hello', 2.5{]}% Row Count 22 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Radius of Circle}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{while True:  \newline % Row Count 1 (+ 1)
    \#Ask the user for a radius of a circle \newline % Row Count 2 (+ 1)
    user\_radius = input("Please enter the radius of the circle") \newline % Row Count 4 (+ 2)
    \#Convert the given radiusto a floating point \newline % Row Count 5 (+ 1)
    radius = float(user\_radius) \newline % Row Count 6 (+ 1)
    \#make a variable called pi \newline % Row Count 7 (+ 1)
    pi = 3.1415 \newline % Row Count 8 (+ 1)
    \#Calculate the area of the circle using exponents \newline % Row Count 10 (+ 2)
    area = pi {\emph{ radius }}*2 \newline % Row Count 11 (+ 1)
    \#display the area of the circle to the user \newline % Row Count 12 (+ 1)
    print("The area of the circle is", area)% Row Count 13 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{A multiple string}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\# write definitions for the following words and print them using \newline % Row Count 2 (+ 2)
\# a multi-line string \newline % Row Count 3 (+ 1)
def printDefinitions(word): \# parameter word \newline % Row Count 4 (+ 1)
    if word == "variable": \newline % Row Count 5 (+ 1)
        \#variale \newline % Row Count 6 (+ 1)
        print """ \newline % Row Count 7 (+ 1)
        A variable is ... \newline % Row Count 8 (+ 1)
        """ \newline % Row Count 9 (+ 1)
    elif word == "function": \newline % Row Count 10 (+ 1)
        \# function \newline % Row Count 11 (+ 1)
        print (""" \newline % Row Count 12 (+ 1)
        A function is ... \newline % Row Count 13 (+ 1)
        """) \newline % Row Count 14 (+ 1)
    elif word == "parameter": \newline % Row Count 15 (+ 1)
        print(""" \newline % Row Count 16 (+ 1)
        A parameter is ... \newline % Row Count 17 (+ 1)
        """) \newline % Row Count 18 (+ 1)
    elif word == "argument": \newline % Row Count 19 (+ 1)
        print(""" \newline % Row Count 20 (+ 1)
        A argument is ... \newline % Row Count 21 (+ 1)
        """) \newline % Row Count 22 (+ 1)
    elif word == "string": \newline % Row Count 23 (+ 1)
        print(""" \newline % Row Count 24 (+ 1)
        A srting is ... \newline % Row Count 25 (+ 1)
        """) \newline % Row Count 26 (+ 1)
    elif word == "function call": \newline % Row Count 27 (+ 1)
        print(""" \newline % Row Count 28 (+ 1)
        A function call is .... \newline % Row Count 29 (+ 1)
        """)+ \newline % Row Count 30 (+ 1)
} \tn 
\end{tabularx}
\par\addvspace{1.3em}

\vfill
\columnbreak
\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{A multiple string (cont)}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{        \# parameter \newline % Row Count 1 (+ 1)
        \# argument \newline % Row Count 2 (+ 1)
        \# string \newline % Row Count 3 (+ 1)
        \# function call \newline % Row Count 4 (+ 1)
    else: \newline % Row Count 5 (+ 1)
        return "unknown word" \newline % Row Count 6 (+ 1)
\#ask the user for the name of the word define \newline % Row Count 7 (+ 1)
user\_input = input (" \newline % Row Count 8 (+ 1)
printDefinitions( user\_input )% Row Count 9 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{How to make list in python}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\#how to make list in python \newline % Row Count 1 (+ 1)
shoppinglist = {[}'bag', 'shoes', 'boots', 'shiryt'{]} \newline % Row Count 3 (+ 2)
print(shoppinglist{[}2{]}) \newline % Row Count 4 (+ 1)
item\_number = 0 \newline % Row Count 5 (+ 1)
\#while loop \newline % Row Count 6 (+ 1)
while item\_number \textless{} len(shoppinglist): \newline % Row Count 7 (+ 1)
    print ("List item:",shoppinglist{[}item\_number{]}) \newline % Row Count 9 (+ 2)
    item\_number = item\_number + 1 \newline % Row Count 10 (+ 1)
\#for loop \newline % Row Count 11 (+ 1)
out = 0 \newline % Row Count 12 (+ 1)
for muids in shoppinglist: \newline % Row Count 13 (+ 1)
    out = out + 1 \newline % Row Count 14 (+ 1)
    \#print("list item:", muids) \newline % Row Count 15 (+ 1)
print (out)% Row Count 16 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Palindrome}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{def isPalindrome(word): \newline % Row Count 1 (+ 1)
    index = 0 \newline % Row Count 2 (+ 1)
    reverse = '' \newline % Row Count 3 (+ 1)
    for letter in word: \newline % Row Count 4 (+ 1)
        reverse = letter + reverse \newline % Row Count 5 (+ 1)
    if reverse == word: \newline % Row Count 6 (+ 1)
        return True \newline % Row Count 7 (+ 1)
    elif word != reverse: \newline % Row Count 8 (+ 1)
        return False \newline % Row Count 9 (+ 1)
while True: \newline % Row Count 10 (+ 1)
    user\_input = input("Please enter a word: ") \newline % Row Count 11 (+ 1)
    if user\_input == ("quit"): \newline % Row Count 12 (+ 1)
        break \newline % Row Count 13 (+ 1)
    print (len(user\_input)) \newline % Row Count 14 (+ 1)
    check = \seqsplit{(isPalindrome(user\_input))} \newline % Row Count 15 (+ 1)
    if check == True: \newline % Row Count 16 (+ 1)
        print(user\_input,"is a palindrome") \newline % Row Count 17 (+ 1)
    elif check == False: \newline % Row Count 18 (+ 1)
        print (user\_input,"is not a palindrome")% Row Count 19 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{p{0.74655 cm} x{4.23045 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Function}}  \tn
% Row 0
\SetRowColor{LightBackground}
\seqsplit{print()} & Show information that you want toscreen \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
int() & Change number to be number integer \tn 
% Row Count 3 (+ 1)
% Row 2
\SetRowColor{LightBackground}
\seqsplit{float()} & Change number to be decimal number \tn 
% Row Count 5 (+ 2)
% Row 3
\SetRowColor{white}
\seqsplit{input()} & Gain information from user \tn 
% Row Count 7 (+ 2)
% Row 4
\SetRowColor{LightBackground}
str() & A list of number,letter and symbols \tn 
% Row Count 9 (+ 2)
% Row 5
\SetRowColor{white}
len() & The length of the string \tn 
% Row Count 10 (+ 1)
% Row 6
\SetRowColor{LightBackground}
\# & Comment, no effect \tn 
% Row Count 11 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{2.18988 cm} x{2.78712 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Multiplication and Exponent}}  \tn
% Row 0
\SetRowColor{LightBackground}
string*number & Combine the string \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
string*string & CRASH! \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
number*number & Multiply(math) \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
string**string & CRASH! \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
number**number & Exponent(math) \tn 
% Row Count 5 (+ 1)
% Row 5
\SetRowColor{white}
string**number & CRASH! \tn 
% Row Count 6 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Random}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{import random \newline % Row Count 1 (+ 1)
\# Create a list of integers \newline % Row Count 2 (+ 1)
inlist = {[}1,2,4,5,7,9{]} \newline % Row Count 3 (+ 1)
random\_int = random.choice(intlist) \newline % Row Count 4 (+ 1)
print (inlist, random\_int) \#print the entire list andthe random item \newline % Row Count 6 (+ 2)
\# Create a list of floating point numbers \newline % Row Count 7 (+ 1)
fplist = {[}1.5,2.2,1.0,100.999{]} \newline % Row Count 8 (+ 1)
random\_fp = random.choice(fplist) \newline % Row Count 9 (+ 1)
print (fplist, random\_fp) \#print the entire list and the random item \newline % Row Count 11 (+ 2)
\# Create a list of strings \newline % Row Count 12 (+ 1)
strlist = {[}'dog', "cat", 'match', "it's me", '"hi"'{]} \newline % Row Count 14 (+ 2)
random\_str = random.choice(strlist) \newline % Row Count 15 (+ 1)
print (strlist, random\_str) \#print the entire list and the random item \newline % Row Count 17 (+ 2)
\# Create a list of integers and floating point numbers and string \newline % Row Count 19 (+ 2)
mylist = {[}1,2,2.2,3.2, 'string', "hi"{]} \newline % Row Count 20 (+ 1)
random\_item = random.choice(mylist) \newline % Row Count 21 (+ 1)
print (mylist, random\_item) \#print the entire list and the random item \newline % Row Count 23 (+ 2)
\# create alist of following variable \newline % Row Count 24 (+ 1)
myvar1 = 1 \newline % Row Count 25 (+ 1)
myvae2 = 2 \newline % Row Count 26 (+ 1)
myvar3 = 3 \newline % Row Count 27 (+ 1)
varlist = {[}myvar1, myvar2, myvar3{]} \newline % Row Count 28 (+ 1)
random\_var = random.choice(varlist) \newline % Row Count 29 (+ 1)
print (varlist, random\_var) \#print the entire list and the random item% Row Count 31 (+ 2)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Countdown}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\# Create a program that receives a number from the user and counts down \newline % Row Count 2 (+ 2)
\# from that number on the same line \newline % Row Count 3 (+ 1)
\# receive the number from the user as a string \newline % Row Count 4 (+ 1)
user\_number = input("7") \newline % Row Count 5 (+ 1)
\#convert the user number to an integer \newline % Row Count 6 (+ 1)
number = int(user\_number) \newline % Row Count 7 (+ 1)
\#setup the countdown string \newline % Row Count 8 (+ 1)
countdown\_string = '7 6 5 4 3 2 1 0' \newline % Row Count 9 (+ 1)
while number \textgreater{} 0: \newline % Row Count 10 (+ 1)
    \# add the number to the string \newline % Row Count 11 (+ 1)
    countdowm\_string = something + str(somethingelse) \newline % Row Count 13 (+ 2)
    \# subtract 1 from the number \newline % Row Count 14 (+ 1)
    number = number - 1 \newline % Row Count 15 (+ 1)
print (countdown\_string)% Row Count 16 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{How to create function}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\# how to create a function \newline % Row Count 1 (+ 1)
def nameOfFunction(myvar1, myvar2): \#parameters or argument \newline % Row Count 3 (+ 2)
\#write a function \newline % Row Count 4 (+ 1)
\# name : areaOfTriangle \newline % Row Count 5 (+ 1)
\# parameters : base height \newline % Row Count 6 (+ 1)
\# return: area \newline % Row Count 7 (+ 1)
user\_base = float(input('Enter the base of the triangle: ')) \newline % Row Count 9 (+ 2)
user\_height = float(input('Enter the height ofthe triangle: ')) \newline % Row Count 11 (+ 2)
print ('the area of the triangle is', \seqsplit{areaOfTriangle(user\_base}, user\_hight)) \newline % Row Count 13 (+ 2)
\# name: volumeOfPrism \newline % Row Count 14 (+ 1)
\#  parameters: area height \newline % Row Count 15 (+ 1)
\#  return: volume \newline % Row Count 16 (+ 1)
def volumeOfPrism \newline % Row Count 17 (+ 1)
user\_prism\_height = float(input9'Enter the height of prism: ')) \newline % Row Count 19 (+ 2)
print('the volume of the prism is', \seqsplit{volumeOfPrism(areaOfTriangle(user\_base}, user\_height), user\_prism\_height))% Row Count 22 (+ 3)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Operation}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{def calc(num1, num2, operation): \newline % Row Count 1 (+ 1)
    \#user if/elif/else to check what operation \newline % Row Count 2 (+ 1)
    if operation == "sum": \newline % Row Count 3 (+ 1)
        return sum(num1, num2) \newline % Row Count 4 (+ 1)
    elif operation == "div": \newline % Row Count 5 (+ 1)
        return div(num1, num2) \newline % Row Count 6 (+ 1)
    elif operation == "product": \newline % Row Count 7 (+ 1)
        return product (num1, num2) \newline % Row Count 8 (+ 1)
    else: \newline % Row Count 9 (+ 1)
        print ("unknown operation") \newline % Row Count 10 (+ 1)
def sum(a, b): \newline % Row Count 11 (+ 1)
    \#calculate the sum of a and b \newline % Row Count 12 (+ 1)
    return a+b \newline % Row Count 13 (+ 1)
    \#return the answer \newline % Row Count 14 (+ 1)
def product(a, b): \newline % Row Count 15 (+ 1)
    \# calculate the productof a and b \newline % Row Count 16 (+ 1)
    return a * b \newline % Row Count 17 (+ 1)
    \#return the answer \newline % Row Count 18 (+ 1)
def diff(a, b): \newline % Row Count 19 (+ 1)
    \# calculate the difference between a and b \newline % Row Count 20 (+ 1)
    return a -b \newline % Row Count 21 (+ 1)
    \# return the answer \newline % Row Count 22 (+ 1)
def div(a, b): \newline % Row Count 23 (+ 1)
    \# calculate the division of a and b \newline % Row Count 24 (+ 1)
    return a / b \newline % Row Count 25 (+ 1)
    \# return the answer3 \newline % Row Count 26 (+ 1)
print(calc ( 10, -2, "div")) \newline % Row Count 27 (+ 1)
print(calc(1,2,"sum")) \#output should be 3 \newline % Row Count 28 (+ 1)
print(calc (4, 2, "diff")) \# output should be 2 \newline % Row Count 29 (+ 1)
calc (9, 3, "div" )) \#output should be 3 \newline % Row Count 30 (+ 1)
} \tn 
\end{tabularx}
\par\addvspace{1.3em}

\vfill
\columnbreak
\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Operation (cont)}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{calc (2, 12, "product")) \#output shouldbe 24% Row Count 1 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{p{0.4977 cm} x{4.4793 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Math}}  \tn
% Row 0
\SetRowColor{LightBackground}
== & equal to \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
!= & no equal to \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
\textless{} & less than \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
\textgreater{} & more than \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
\textless{}= & less than or equal to \tn 
% Row Count 5 (+ 1)
% Row 5
\SetRowColor{white}
\textgreater{}= & more than or equal to \tn 
% Row Count 6 (+ 1)
% Row 6
\SetRowColor{LightBackground}
\% & Modulo, find the remainder \tn 
% Row Count 7 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Convert Binary}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\#write a program that convert a number to binary \newline % Row Count 1 (+ 1)
while True: \newline % Row Count 2 (+ 1)
    \#get a number from the user \newline % Row Count 3 (+ 1)
    user\_number = input("please enter the number") \newline % Row Count 5 (+ 2)
    \#convert to integer \newline % Row Count 6 (+ 1)
    number = int(user\_number) \newline % Row Count 7 (+ 1)
    binary\_string = '' \newline % Row Count 8 (+ 1)
    while (number \textgreater{} 0):\#the number is greater than 0) \newline % Row Count 10 (+ 2)
        remainder = number \% 2\#user Modulo \% \newline % Row Count 11 (+ 1)
        binary\_string = str(remainder) + binary\_string \#remainder + binary string \newline % Row Count 13 (+ 2)
        number = number // 2\#must use // when you divide \newline % Row Count 15 (+ 2)
    \#after the loop print the binary string \newline % Row Count 16 (+ 1)
    print ("Binary string is",binary\_string) \newline % Row Count 17 (+ 1)
    \#expected output - 5 = 101 \newline % Row Count 18 (+ 1)
    \#expected output - 3 = 11 \newline % Row Count 19 (+ 1)
    \#expected output - 2 = 10% Row Count 20 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Convert Hexadecimal}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\#write a program that convert a number to binary \newline % Row Count 1 (+ 1)
while True: \newline % Row Count 2 (+ 1)
    \#get a number from the user \newline % Row Count 3 (+ 1)
    user\_number = input("please enter the number") \newline % Row Count 5 (+ 2)
    \#convert to integer \newline % Row Count 6 (+ 1)
    number = int(user\_number) \newline % Row Count 7 (+ 1)
    hex\_string = '' \newline % Row Count 8 (+ 1)
    while (number \textgreater{} 0):\#the number is greater than 0) \newline % Row Count 10 (+ 2)
        remainder = number \% 16\#user Modulo \% \newline % Row Count 11 (+ 1)
        if remainder == 10: \newline % Row Count 12 (+ 1)
            remainder = 'A' \newline % Row Count 13 (+ 1)
        elif remainder == 11: \newline % Row Count 14 (+ 1)
            remainder = 'B' \newline % Row Count 15 (+ 1)
        elif remainder == 12: \newline % Row Count 16 (+ 1)
            remainder = 'C' \newline % Row Count 17 (+ 1)
        elif remainder  == 13: \newline % Row Count 18 (+ 1)
            remainder = 'D' \newline % Row Count 19 (+ 1)
        elif remainder == 14: \newline % Row Count 20 (+ 1)
            remainder = 'E' \newline % Row Count 21 (+ 1)
        elif remainder == 15: \newline % Row Count 22 (+ 1)
            remainder = 'F' \newline % Row Count 23 (+ 1)
        hex\_string = str(remainder) + hex\_string \#remainder + hexadecimal string \newline % Row Count 25 (+ 2)
        number = number // 16\#must use // when you divide \newline % Row Count 27 (+ 2)
    \#after the loop print the Hexadecimal string \newline % Row Count 28 (+ 1)
    print ("Hexadecimal string is 0x" + hex\_string) \newline % Row Count 30 (+ 2)
} \tn 
\end{tabularx}
\par\addvspace{1.3em}

\vfill
\columnbreak
\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Convert Hexadecimal (cont)}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{    \#expected output - 5 = 101 \newline % Row Count 1 (+ 1)
    \#expected output - 3 = 11 \newline % Row Count 2 (+ 1)
    \#expected output - 2 = 10% Row Count 3 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Return Max number}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{def max2(num1, num2): \newline % Row Count 1 (+ 1)
    if num1 \textgreater{} num2: \newline % Row Count 2 (+ 1)
        return num1 \newline % Row Count 3 (+ 1)
    else: \newline % Row Count 4 (+ 1)
        return num2 \newline % Row Count 5 (+ 1)
def max3(num1, num2, num3): \newline % Row Count 6 (+ 1)
    if num1 \textgreater{} num2 and num1 \textgreater{} num3: \newline % Row Count 7 (+ 1)
        return num1 \newline % Row Count 8 (+ 1)
    elif num2 \textgreater{} num1 and num2 \textgreater{} num3: \newline % Row Count 9 (+ 1)
        return num2 \newline % Row Count 10 (+ 1)
    else: \newline % Row Count 11 (+ 1)
        return num3 \newline % Row Count 12 (+ 1)
print (max2(10, 15)) \newline % Row Count 13 (+ 1)
print (max2(20, 10)) \newline % Row Count 14 (+ 1)
print (max3(1, 2, 3)) \newline % Row Count 15 (+ 1)
print (max3(15, 20, 10)) \newline % Row Count 16 (+ 1)
print (max3(99, 15, 47))% Row Count 17 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{My list}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{mylist = {[}'lion' , 'tiger', 'cheetah', 'cougar' ,'lynx'{]} \newline % Row Count 2 (+ 2)
print (mylist{[}1{]}) \newline % Row Count 3 (+ 1)
print (mylist) \newline % Row Count 4 (+ 1)
user\_guess = input("Guess a word: ") \newline % Row Count 5 (+ 1)
random\_item = random.choice(mylist) \newline % Row Count 6 (+ 1)
print (random\_item) \newline % Row Count 7 (+ 1)
if user\_guess == random\_item: \newline % Row Count 8 (+ 1)
    print ("Correct guess") \newline % Row Count 9 (+ 1)
else:  \newline % Row Count 10 (+ 1)
    if user\_guess in mylist: \newline % Row Count 11 (+ 1)
        print ("yes, in the list") \newline % Row Count 12 (+ 1)
    else: \newline % Row Count 13 (+ 1)
        print ("No,not in the list")% Row Count 14 (+ 1)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Multiple Parameter}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{\_var1 = 1 \newline % Row Count 1 (+ 1)
\_var1 = 3 \newline % Row Count 2 (+ 1)
\_var1 + 100 \newline % Row Count 3 (+ 1)
print(\_var1) \newline % Row Count 4 (+ 1)
def bacon () : \newline % Row Count 5 (+ 1)
    print("hello it'sbacon") \newline % Row Count 6 (+ 1)
    print("line 2") \newline % Row Count 7 (+ 1)
    print("line 3") \newline % Row Count 8 (+ 1)
    print("line 4") \newline % Row Count 9 (+ 1)
    print("line 5") \newline % Row Count 10 (+ 1)
    print("line 6") \newline % Row Count 11 (+ 1)
    print("line 7") \newline % Row Count 12 (+ 1)
    print("line 8") \newline % Row Count 13 (+ 1)
    return \newline % Row Count 14 (+ 1)
def myprint(text): \#Single parameter \newline % Row Count 15 (+ 1)
    print("{\bf{{\emph{" +  str(text) + "}}}}") \newline % Row Count 16 (+ 1)
    return \newline % Row Count 17 (+ 1)
myprint(1) \newline % Row Count 18 (+ 1)
myprint("hello") \newline % Row Count 19 (+ 1)
myprint(1+2) \newline % Row Count 20 (+ 1)
def myprint2(text, decoration): \#multiple parameters \newline % Row Count 22 (+ 2)
    print (decoration + str(text) + decoration) \newline % Row Count 23 (+ 1)
    return \newline % Row Count 24 (+ 1)
myprint2(12312321312, "+++") \newline % Row Count 25 (+ 1)
myprint2("hello","\textless{}\textless{}\textgreater{}\textgreater{}") \newline % Row Count 26 (+ 1)
def doubleIt(number): \newline % Row Count 27 (+ 1)
    return number * 2 \newline % Row Count 28 (+ 1)
myvar = 2 \newline % Row Count 29 (+ 1)
myvarDouble = doubleIt(myvar) \newline % Row Count 30 (+ 1)
} \tn 
\end{tabularx}
\par\addvspace{1.3em}

\vfill
\columnbreak
\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{Multiple Parameter (cont)}}  \tn
\SetRowColor{white}
\mymulticolumn{1}{x{5.377cm}}{print(myvarDouble) \newline % Row Count 1 (+ 1)
print(doubleIt("hello")) \newline % Row Count 2 (+ 1)
myvar = doubleIt(doubleIt(3)) \# same as doubleIt(6) \newline % Row Count 4 (+ 2)
print(myvar) \newline % Row Count 5 (+ 1)
def sumIt(num1, num2): \newline % Row Count 6 (+ 1)
    return num1+num2 \newline % Row Count 7 (+ 1)
print(sumIt("a", "b")) \newline % Row Count 8 (+ 1)
print (sumIt(2,3)) \newline % Row Count 9 (+ 1)
def areaOfCircle (r): \newline % Row Count 10 (+ 1)
    pi = 3.1415 \newline % Row Count 11 (+ 1)
    area = pi {\emph{ r }}* 2 \newline % Row Count 12 (+ 1)
    return \newline % Row Count 13 (+ 1)
user\_Radius = input('Enter the radius:') \newline % Row Count 14 (+ 1)
radius = float(user\_radius) \newline % Row Count 15 (+ 1)
print("the area of the circle is", areaOfCircle(radius))% Row Count 17 (+ 2)
} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}


% That's all folks
\end{multicols*}

\end{document}