\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{Earn} \pdfinfo{ /Title (python-sheet.pdf) /Creator (Cheatography) /Author (Earn) /Subject (Python Sheet 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}{A3A3A3} \definecolor{LightBackground}{HTML}{F3F3F3} \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 Sheet Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{Earn} via \textcolor{DarkBackground}{\uline{cheatography.com/25799/cs/6934/}}} \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}Earn \\ \uline{cheatography.com/earn} \\ \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 12th 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 & something that can change \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} string & a list of characters \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} loop & infinite playing \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} integer number & full number \tn % Row Count 5 (+ 2) % Row 4 \SetRowColor{LightBackground} float number & decimal number \tn % Row Count 7 (+ 2) % Row 5 \SetRowColor{white} print & shoe the output \tn % Row Count 8 (+ 1) % Row 6 \SetRowColor{LightBackground} syntax & grammar/structure of language \tn % Row Count 9 (+ 1) % Row 7 \SetRowColor{white} modulo & find the remainder \tn % Row Count 10 (+ 1) % Row 8 \SetRowColor{LightBackground} boolean & true/false \tn % Row Count 11 (+ 1) % Row 9 \SetRowColor{white} function & a piece of code in a program \tn % Row Count 12 (+ 1) % Row 10 \SetRowColor{LightBackground} function call & telling that program to excute that function \tn % Row Count 14 (+ 2) % Row 11 \SetRowColor{white} parameter & something you gave to the function \tn % Row Count 16 (+ 2) % Row 12 \SetRowColor{LightBackground} argument & parameter \tn % Row Count 17 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{0.89586 cm} x{4.08114 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Code}} \tn % Row 0 \SetRowColor{LightBackground} \seqsplit{input()} & gain information for user \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} int () & change number to be integer number \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} float () & change number to be decimal number \tn % Row Count 5 (+ 2) % Row 3 \SetRowColor{white} str () & a list of number, letter and symbols \tn % Row Count 7 (+ 2) % Row 4 \SetRowColor{LightBackground} print () & show the result \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}{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} != & not 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{2.33919 cm} x{2.63781 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Multiplication \& Exponent}} \tn % Row 0 \SetRowColor{LightBackground} string * number & combine the string \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} number * number & multiply(math) \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} number ** number & exponent(math) \tn % Row Count 3 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{2.38896 cm} x{2.58804 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} number + number & addition(math) \tn % Row Count 2 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{3.63321 cm} p{1.34379 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{CRASH!}} \tn % Row 0 \SetRowColor{LightBackground} string + number & CRASH! \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} string * string & CRASH! \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} string ** string & CRASH! \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}{True/False}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{True or anything is always TRUE \newline % Row Count 1 (+ 1) False and anything is always FALSE% Row Count 2 (+ 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}{Forever While Loop}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{while True: \newline user\_input = input('Enter a number: ') \newline number = int(user\_input) \newline print('The number squared is', number ** 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}{Decision Making/Conditional Statements}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{if 3 \textless{} 2: \#if statement must compare 2 Boolean\textbackslash{} \newline print('3 is less than 2') \newline elif 4 \textless{} 2: \#can't have 0 or more elif statement \newline print('4 is less than 2') \newline elif 5 \textless{} 2: \newline print('5 is less than 2') \newline else: \#can have 0 or 1 else statement at the end \newline print('none of the above are True')} \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}{While Loop with List}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{thelist = {[}4, 3, 2, 1, 0{]} \newline index = 0 \# start at the first item \newline while index \textless{} len(thelist): \newline print (thelist{[}index{]}) \#prints each item \newline index = index + 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}{For-Loop with List}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{forlist = {[}3, 4, 5, 2, 1{]} \newline for item in forlist: \newline print(item)} \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}{Functions}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{\#function with no parameters/arguments \newline \#and no return value \newline \#return is optional if you do not return a value \newline def nameOfFunction(): \newline print ('This function has no parameters') \newline print ('This function has no return value') \newline return \# no value, just exits the function \newline \seqsplit{\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_} \newline \#function call \newline nameOfFunction() \newline \#function with 1 parameter/argument \newline def testFunction(param): \newline print ('This function has 1 parameter') \newline print (param) \newline \newline \#function call \newline testFunction ("this is the parameter value") \seqsplit{\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_} \newline \#function with 2 parameters and a return value \newline def function3(param1, param2): \newline print('This function has 2 parameters') \newline return param1 + param2 \# return value \newline \#function call and store the result in a variable \newline returnValue = function3(2, 3) \newline print (returnValue)} \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}{Count Even\&Odd \#}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{\#repeatly receives positive integers from user and exit when gets negative number, then count even and odd number \newline \newline evenCount = 0 \newline oddCount = 0 \newline \newline while True: \newline user\_input = int(input("Enter number: ")) \newline if user\_input \textless{} 0: \newline print("Total even: ",evenCount) \newline print("Total odd: ",oddCount) \newline break \newline elif user\_input \textgreater{} 0: \newline if user\_input \% 2 == 0: \newline evenCount = evenCount + 1 \newline else: \newline oddCOunt = oddCount +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}{Mystring}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{' ' ' \newline expected output: \newline 0 \newline 01 \newline 012 \newline 0123 \newline 01234 \newline ' ' ' \newline mystring = " " \newline count = 0 \newline while count \textless{} 5: \newline mystring = mystring + str(count) \newline print(mrstring) \newline count = count + 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}{Condition While Loop}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{count = 0 \#start at 0 \newline while count \textless{} 10: \#loop while count is less than 10 \newline print(count) \#will print number 0-9 \newline count = count + 1 \#must increase count \newline ' ' ' \newline output \newline 0 \newline to \newline 9 \newline ' ' '} \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 Machine}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{user\_number = input("What number do you want to count down? ") \newline number = int(user\_number) \newline countdown\_string = ' ' \newline \newline while number \textgreater{} 0: \newline countdown\_number = countdown\_string + str(number) + " " \newline number = number - 1 \newline \#print(number) \newline \newline print(countdown\_string)} \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}{Random List}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{import random \newline \newline \#create a list \newline mylist = {[}-1,1.2,11,"srujryju","yikjghk"{]} \newline random\_item = random.choice(mylist) \newline print(mylist, random\_item)} \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}{Reverse Word}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{while True: \newline word = input("Please enter a word") \newline index = 0 \newline reverse = ' ' \newline \newline while int(index) \textless{} len(word): \newline reverse = word{[}index{]} + (reverse) \newline index = int(index) + 1 \newline \newline print ("Reverse: ", reverse)} \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}{Function pi{\emph{r}}*2}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{x{5.377cm}}{def areaoscircle(r): \newline pi = 3.1415 \newline return pi {\emph{ r }}* 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}{Printing values}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{print("hello", "there") \#displays hello there \newline % Row Count 1 (+ 1) print("hello" + "there") \#displays hellothere% Row Count 2 (+ 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}{Combining Strings (Concatenation)}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{"hi" + "there" == "hithere" \newline % Row Count 1 (+ 1) "hi" * 5 == "hihihihihi"% Row Count 2 (+ 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}{Naming Convention}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{Rule for giving name \newline % Row Count 1 (+ 1) - letter \newline % Row Count 2 (+ 1) - numbers \newline % Row Count 3 (+ 1) - underscore\_ \newline % Row Count 4 (+ 1) Valid name \newline % Row Count 5 (+ 1) - \_mystr \newline % Row Count 6 (+ 1) - my3 \newline % Row Count 7 (+ 1) - Hello\_there \newline % Row Count 8 (+ 1) Invalid name \newline % Row Count 9 (+ 1) - 3my = "hi" -{}- cannot start with number \newline % Row Count 10 (+ 1) - first name = "hi" \newline % Row Count 11 (+ 1) - first-name \newline % Row Count 12 (+ 1) - first+name% 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}{Example}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{Print(2) - integer \newline % Row Count 1 (+ 1) Print(2.5) - floating point \newline % Row Count 2 (+ 1) Print("Hello") - string \newline % Row Count 3 (+ 1) Print(mystr) - variable \newline % Row Count 4 (+ 1) Print(mystr, "Hi",2,1.0) -{}- commas \newline % Row Count 5 (+ 1) mystr = "Hi" \newline % Row Count 6 (+ 1) mystr \textless{}- name \newline % Row Count 7 (+ 1) "Hi" \textless{}- value can change \newline % Row Count 8 (+ 1) print(int(1.5)) -\textgreater{} 1 \newline % Row Count 9 (+ 1) print(int("2")) -\textgreater{} 2 \newline % Row Count 10 (+ 1) print(float(1)) -\textgreater{} 1.0 anything to a float% Row Count 11 (+ 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}{Example Code}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{mylist = {[}1, 'hello', 2.5{]} \newline % Row Count 1 (+ 1) print (mylist) \newline % Row Count 2 (+ 1) print (mylist2) \newline % Row Count 3 (+ 1) print (mylist3) \newline % Row Count 4 (+ 1) \# how to make a list with all numbers from 0-99 \newline % Row Count 5 (+ 1) mynumbers = range(5) \newline % Row Count 6 (+ 1) for num on mynumbers: \newline % Row Count 7 (+ 1) print (num)% Row Count 8 (+ 1) } \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}