From c680d39751d3bbcfde3a819fa47bb58e9f6cfd4b Mon Sep 17 00:00:00 2001 From: xaloc Date: Thu, 4 Jun 2020 20:49:20 +0200 Subject: [PATCH] primer commit --- LICENSE | 5 + README.md | 3 + cheatsheet.pdf | Bin 0 -> 95083 bytes cheatsheet.tex | 403 ++++++++++++++++++++++++++++++++++++++++++++++++ for.py | 4 + func_hello.py | 4 + hello_name.py | 2 + if.py | 7 + library.py | 6 + simple_hello.py | 1 + while.py | 5 + 11 files changed, 440 insertions(+) create mode 100644 LICENSE create mode 100644 README.md create mode 100644 cheatsheet.pdf create mode 100644 cheatsheet.tex create mode 100644 for.py create mode 100644 func_hello.py create mode 100644 hello_name.py create mode 100644 if.py create mode 100644 library.py create mode 100644 simple_hello.py create mode 100644 while.py diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e86b3ef --- /dev/null +++ b/LICENSE @@ -0,0 +1,5 @@ +"THE NON-ALCOHOLIC-BEVERAGE-WARE LICENSE": + + wrote this. As long as you retain this notice you can +do whatever you want with this stuff. If we meet some day, and you think this +stuff is worth it, you can buy me a non-alcoholic beverage in return Xaloc diff --git a/README.md b/README.md new file mode 100644 index 0000000..f968389 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +Hoja explicativa de los elementos principales de python para principiantes. + +Para poder recrear el pdf se necesita la biblioteca baposter.cls y hay que tener todos los scripts de python en el mismo fichero. diff --git a/cheatsheet.pdf b/cheatsheet.pdf new file mode 100644 index 0000000000000000000000000000000000000000..14504d2ebd1cac0f1f0fc9553079546d19c651fc GIT binary patch literal 95083 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�nJbH)KKIpT7SB0simV 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
    >{rwwo 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�Z#r9XXUEoK_4RQhgA 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 \\ +type(3.14) & returns: \\ +\end{tabular} + +\dotfill \newline + +%-------------------------------------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Inputs:}} +%\begin{tabular}{lp{2.0cm}lp{3.0cm}|} + +\begin{tabular}{lp{5.3cm}lp{3.0cm}|} +A = input() & Waits for you to enter some characters and saves them in A\\ +\end{tabular} +\begin{tabular}{lp{4.7cm}lp{3.0cm}|} +B = int(input()) & Waits for you to enter integers and saves them in B \\ +\end{tabular} +\begin{tabular}{lp{3.0cm}lp{3.0cm}|} +input("Press ENTER") & Waits for you to press ENTER to continue - since there is no variable declared it won't save anything. \\ +\end{tabular} +\begin{tabular}{lp{2.6cm}lp{3.0cm}|} +A = input("message") & Prints "message" and waits for you to enter a value that will be saved in A\\ +\end{tabular} + + +\vspace{0.0em} % When there are two boxes, some whitespace may need to be added if the one on the right has more content +} + +%------------------------------------------------ +% Python logic +%------------------------------------------------ + +\headerbox{Basic logic in Python}{name=introduction,column=1,row=0,bottomaligned=objectives}{ + +%------IF-------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - if}} +\begin{itemize}\compresslist +\item if condition1:\\ +\text{ }\quad ........\# do something if condition1 is true \\ +elif condition2:\\ +\text{ }\quad ........\# do something if condition2 is true \\ +else:\newline +\text{ }\quad ........\# do something if both are false +\end{itemize} + + +%------WHILE-------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - while:}} +\begin{itemize}\compresslist +\item while condition:\\ +\text{ }\quad ........\# while condition is true keep doing something, make sure that the condition will be false at some point +\end{itemize} + + +%------FOR-------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - for:}} +\begin{itemize}\compresslist +\item for x in sequence\\ +\text{ }\quad ........\# for x in the given sequence\\ +\text{ }\quad ........\# do something for every item\\ +\text{ }\quad ........\# the sequence can be a list,\\ +\text{ }\quad ........\# elements from a string, etc. + +\item for x in range(10)\\ +\text{ }\quad ........\# repeat something 10 times (from 0 to 9) + +\item for x in range(5,10)\\ +\text{ }\quad ........\# repeat something 5 times (from 5 to 9) +\end{itemize} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Logic tests}} +\linebreak \\ +\begin{tabular}{l l} +10 == 10 & returns: True \\ +10 == 11 & returns: False \\ +10!= 11 & returns: True \\ +"jack" == "jack" & returns: True \\ +"jack" == "jake" & returns: False \\ +10 > 10 & returns: False \\ +10 >= 10 & returns: True \\ +"abc" \text{>=} "abc" & returns: True \\ +"abc" \text{<} "abc" & returns: False \\ +\end{tabular} +} + + +%------------------------------------------------ +% Python Lists +%------------------------------------------------ + +\headerbox{Python Lists}{name=results,column=2,span=2,row=0}{ + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Python Lists}} +\linebreak \\ +\text{Lists are made form elements of any type (they can alternate types)} \linebreak \\ +\begin{tabular}{@{}ll@{}} +\textbf{Using Lists in Python}\\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Creation} \\ +a\_list = [5,3,'p',9,'e'] & creates: [5,3,'p',9,'e'] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Accessing items} \\ +a\_list[0] & returns: 5 \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Slicing} \\ +a\_list[1:3] & returns: [3,'p'] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Length} \\ +len(a\_list) & returns: 5 \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}count( item)} \\ +\multicolumn{2}{l}{returns how many times the item was found in the list.} \\ +\text{ }\text{ }count(a\_list('p') & returns: 1 \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Sorting - sort()} \\ +a\_list.sort() & returns: [3,5,9,'e','p'] \\ +\multicolumn{2}{l}{Sorting without altering the list} \\ +print(sorted(a\_list)) & returns: [3,5,9,'e','p'] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Adding - append(item)} \\ +a\_list.append(37) & returns: [5,3,'p',9,'e',37] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Inserting - insert(position,item)} \\ +insert(a\_list.append(3),200) & returns: [5,3,200,'p',9,'e'] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Retornar e remover - pop(position)} \\ +a\_list.pop() & returns: 'e' and the list becomes [5,3,'p',9] - deletes last element \\ +a\_list.pop(1) & returns: 3 and the list becomes [5,'p',9,'e'] - deletes element 1 \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Delete - remove(item)} \\ +a\_list.remove('p') & returns: [5,3,9,'e'] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Insert} \\ +a\_list.insert(2,'z') & returns: [5,'z',3,'p',9,'e'] - insert in given position \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Invert - reverse()} \\ +reverse(a\_list) & returns: ['e',9,'p',3,5] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Concatenating} \\ +a\_list+[0] & returns: [5,3,'p',9,'e',0] \\ +a\_list+a\_list & returns: [5,3,'p',9,'e',5,3,'p',9,'e'] \\ +\multicolumn{2}{l}{\cellcolor[HTML]{ECB6F9}Find} \\ +9 in a\_list & returns: True \\ +for x in a\_list & returns the whole list, one element per line \\ +\text{ }\quad ......print(x) & +\end{tabular} +%------------------------------------------------ +} +\end{poster} +\newpage + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%% SECOND PAGE %%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{poster} +{ +headerborder=closed, colspacing=0.8em, bgColorOne=white, bgColorTwo=white, borderColor=violet, headerColorOne=black, headerColorTwo=violet, +headerFontColor=white, boxColorOne=white, textborder=roundedleft, eyecatcher=true, headerheight=0.1\textheight, headershape=roundedright, headerfont=\Large\bf\textsc, linewidth=2pt +} +%---------------------------------------------------------------- +% TITLE SECTION +%---------------------------------------------------------------- +{\bf\textsc{Python Cheat Sheet}\vspace{0.5em}} % Poster title +{\textsc{ P y t h o n \ \ \ \ \ C h e a t \ \ \ \ \ S h e e t \hspace{12pt}}} +{\textsc{\\ Xaloc \hspace{12pt}}} + +%---------------------------------------------------------------- +% Other Elements +%---------------------------------------------------------------- +\headerbox{Other Elements}{name=method,column=0}{ + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Key words}} +\begin{tabular}{lp{5.8cm}lp{1.0cm}} +{\bf Oper.} & {\bf Description}\\ +print & prints on the screen \\ +break & stops a loop if necessary\\ +continue & restarts loop ignoring commands below \\ +is & Tries an object identity \\ +def & Used to create a new function defined by the user \\ +return & Exit the function and returns a value \\ +global & Access variables defined globally (outside of a function) \\ +del & Deletes objects \\ +\end{tabular} + + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Libraries}} +Libraries are a collection of functions and methods that allow you to perform many actions without writing your code\linebreak \\ +\textbf{Using Libraries in Python}\\ +\begin{tabular}{lp{5.8cm}lp{1.0cm}} +import & imports a library inside a script\\ +as & gives an alias to the library \\ +from & imports a specific function from a library\\ +\end{tabular} +\linebreak +\textbf{Useful Libraries}\\ +\begin{tabular}{lp{5.8cm}lp{1.0cm}} +numpy & library for maths\\ +matplotlib & library for plotting \\ +tkinter & library to create GUI\\ +random & library for random numbers\\ +\end{tabular} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Functions}} +\begin{itemize}\compresslist +\item def f\_name(args):\\ +\text{ }\quad ........\# operations done by the function +\text{ }\quad return value\_to\_return +\end{itemize} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Dictionaries}} +A dictionary is a list of keys and values, where you can access a value by its key. All keys must be different.\\ +car = ["brand" : "Hummer",\\ +\text{ }\quad\text{ }\quad "model":"H2",\\ +\text{ }\quad\text{ }\quad "year":2009,]\\ + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Tuples}} +A tuple is a list of values separated by a comma - very similar to a list but tuples are immutable (you are not allowed to change their values):\\ +a\_tuple = ('a','b','c') +} + +%---------------------------------------------------------------- +% Operators +%---------------------------------------------------------------- +\headerbox{Python Operators}{name=results2,column=1}{ +Lets take a=10 and b=20 as example:\\ +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Arithmetic operators}} +\begin{tabular}{lll} +{\bf Op.} & {\bf Description} & {\bf Example} \\ ++ & Addition & a + b returns: 30 \\ +- & Subtraction & a - b returns: -10 \\ +* & Multiplication& a * b returns: 200 \\ +/ & Division & b / a returns: 2 \\ +\% & Module & a \% b returns: 0 \\ +** & Exponential & a**b returns: $10^{20}$ \\ +// & Euclidean Division & 9 // 2 returns: 4 +\end{tabular} + +%----Comparison operators----------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Comparison Operators}} +Basic comparation opration can be used in different ways for any type of value - numbers, strings, sequences, lists, etc. The answer will always be True or False.\\ +\begin{tabular}{lll} +{\bf Op.} & {\bf Description} & {\bf Example} \\ +< & Less than & a < b returns: True \\ +<= & Less or equal & a <= b returns: True \\ +== & Equal & a == b returns: False \\ +> & Greater than & a > b returns: False \\ +>= & Greater or equal & a >= b returns: False \\ +!= & Different & a != b returns: True +\end{tabular} + +%------Logic Operators----------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - Logic Operators}} +The logic operators {\bf and} and {\bf or} Also return a Boolean value when used in a decision structure.\\ +\begin{tabular}{lp{6.5cm}lp{1.0cm}|} +{\bf Op.} & {\bf Description}\\ +and & If the result of both sides is true, returns: True \\ +or & If one of the results on either side is true, returns: True \\ +not & It is used to invert the result of any Boolean operation. +\end{tabular} + + +%------Operations with strings---------- +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf - String Operators}} +Using a=['Hello'] and b=['Python'] +\begin{tabular}{lp{6.5cm}lp{1.0cm}lp{1.0cm}} %\begin{tabular}{lll} +{\bf Oper.} & {\bf Example} \\ ++ & a + b returns: HelloPython \\ +* & a*2 returns: HelloHello \\ +.[ ] & a[1] returns: "e" \\ +.[ : ] & a[1:4] returns: "ell" \\ +in & H in a will give 1 \\ +not in & M not in a returns: 1 \\ +\end{tabular} + +} + +%---------------------------------------------------------------- +% Examples +%---------------------------------------------------------------- +\headerbox{Examples}{name=conclusion,column=2,span=2,row=0}{ +A few examples to see how actual python code looks like. + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf Simple Hello World with print}} +\lstinputlisting{simple_hello.py} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf Hello World with function}} +\lstinputlisting{func_hello.py} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf Hello your name}} +\lstinputlisting{hello_name.py} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf Using a library}} +\lstinputlisting{library.py} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf if loop}} +\lstinputlisting{if.py} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf while loop}} +\lstinputlisting{while.py} + +\colorbox[HTML]{DA74F3}{\makebox[\textwidth-2\fboxsep][l]{\bf for loop}} +\lstinputlisting{for.py} +} + + + + + + +\end{poster} +\end{document} \ No newline at end of file diff --git a/for.py b/for.py new file mode 100644 index 0000000..c760ffd --- /dev/null +++ b/for.py @@ -0,0 +1,4 @@ +x = "hello" #stores hello in x +for c in x: #repeats loop for every character of x + print(c) #prints current character + #result: h,e,l,l,o diff --git a/func_hello.py b/func_hello.py new file mode 100644 index 0000000..50e6377 --- /dev/null +++ b/func_hello.py @@ -0,0 +1,4 @@ +def hello(): #Function definition + print("Hello World!") + +hello() #Function called and Hello World! printed diff --git a/hello_name.py b/hello_name.py new file mode 100644 index 0000000..5b4f175 --- /dev/null +++ b/hello_name.py @@ -0,0 +1,2 @@ +name = input("Enter your name:")# Asks you to enter your name +print("Hello "+name) # Prints Hello and the value in name diff --git a/if.py b/if.py new file mode 100644 index 0000000..17a5aa9 --- /dev/null +++ b/if.py @@ -0,0 +1,7 @@ +x = float(input("Enter any number:")) #Aks number and stores in x +if x > 5.3: #checks if x>5.3 + print(x, " bigger than 5.3") #only if previous condition True +elif x < 5.3: #checks if x<5.3 + print(x, " smaller than 5.3") #only if previous condition True +else: #if 1st and 2nd false + print(x, "equals 5.3") #prints equal diff --git a/library.py b/library.py new file mode 100644 index 0000000..9fa1adc --- /dev/null +++ b/library.py @@ -0,0 +1,6 @@ +import random as rand #imports library random + #sets library alias to rand +size = int(input("Enter dice size:")) #Asks for dice faces +print("You rolled a ",rand.randint(1,size)) + #Prints result of roll using randint + #from the random library diff --git a/simple_hello.py b/simple_hello.py new file mode 100644 index 0000000..875a9fa --- /dev/null +++ b/simple_hello.py @@ -0,0 +1 @@ +print("Hello World!") #prints Hello World! diff --git a/while.py b/while.py new file mode 100644 index 0000000..5b60691 --- /dev/null +++ b/while.py @@ -0,0 +1,5 @@ +x = 10 #stores 10 in x +while x>0: #if x>0 enters loop + print(x) #prints value of x + x-=1 #substracts 1 to x same as x=x-1 + #result: 10,9,8,7,6,5,4,3,2,1