0% encontró este documento útil (0 votos)
101 vistas58 páginas

01 - 02.1 Fundamentos de Programación en Python

Cargado por

ericka escalante
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
101 vistas58 páginas

01 - 02.1 Fundamentos de Programación en Python

Cargado por

ericka escalante
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 58

SOFTWARE PARA INGENIEROS

Unidad 1 – Fundamentos de
programación en Python
LOGRO DE APRENDIZAJE

Al finalizar la unidad, el estudiante aplica los


fundamentos de la programación Python en un
contexto real o simulado, demostrando una actitud
analítica y organizada.
TEMARIO

TEMA 1 TEMA 2 TEMA 3


Introducción y Tipo Operadores y Entradas y Salidas
de Datos expresiones

35 12.5

-2.89 3.45

TEMA 4 TEMA 5
Controlando el flujo Matrices
TEMARIO

TEMA 1
Introducción y Tipo de Datos
1.1 Introducción y Tipos de Datos

Nombre de variables
Una variable puede tener nombres cortos como X e Y, o tener nombres mas descriptivos como Edad,
Nombre, Volumen_Total.
Reglas para las variables de Python:
➢ Una variable debe iniciar con una letra o una raya abajo ( _ underscore character)
➢ Una variable no puede iniciar con numero
➢ Una variable puede contener solo caracteres alfa numéricos o raya abajo (A-z, 0-9, and _ )
➢ Los nombres de las variables son sensibles a las mayúsculas (p.e. edad, Edad, EDAD son tres variables
diferentes)

Declaración de variables
Python como muchos lenguajes, declara la variable con el primer valor asignado a este. NO REQUIERE UN
COMANDO
➢ x=5
➢ y = "Hello, World!“

Asignación de valores a múltiples variables


Python permite asignar valores a múltiples variables en una sola línea.
➢ x, y, z = ”Orange”, ”Banana”, ”Cherry”
➢ x = y = z = ”Orange”
1.1 Introducción y Tipos de Datos

Comentarios
Python con el propósito de documentar sus códigos de línea, permite comentarlas mediante el carácter # al inicio de la
línea:
➢ #Este es un comentario
print("Hola, mundo!")
➢ print("Hola, mundo!") #Este es un comentario

Se pueden documentar varios códigos de línea:


➢ #Este es un comentario
# escrito en mas
# de una línea
print("Hola, mundo!")
1.1 Introducción y Tipos de Datos

Data type

Text Type: str


Numeric Types: int, float, complex
Sequence Types: list, tuple, range

Mapping Type: dict


Set Types: set, frozenset
Boolean Type: bool
Binary Types: bytes, bytearray, memoryview
1.1 Introducción y Tipos de Datos
Data type
Asignación de variables
Example Data Type
x = "Hello World" str
x = 20 int
x = 20.5 float
x = 1j complex
x = ["apple", "banana", "cherry"] list
x = ("apple", "banana", "cherry") tuple
x = range(6) range
x = {"name" : "John", "age" : 36} dict
x = {"apple", "banana", "cherry"} set
x = frozenset({"apple", "banana", "cherry"}) frozenset
x = True bool
x = b"Hello" bytes
x = bytearray(5) bytearray
x = memoryview(bytes(5)) memoryview
1.1 Introducción y Tipos de Datos
Data type
Para asignar a una variable un tipo de dato especifico, se deben utilizar las siguientes funciones:

Example Data Type


x = str("Hello World") str
x = int(20) int
x = float(20.5) float
x = complex(1j) complex
x = list(("apple", "banana", "cherry")) list
x = tuple(["apple", "banana", "cherry“]) tuple
x = range(6) range
x = dict(name="John", age=36) dict
x = set(("apple", "banana", "cherry")) set
x = frozenset(("apple", "banana", "cherry")) frozenset
x = bool(5) bool
x = bytes(5) bytes
x = bytearray(5) bytearray
x = memoryview(bytes(5)) memoryview
1.1 Introducción y Tipos de Datos

Numbers (números)
Complejos – Que se escriben como un j como
Enteros – Int, or integer, es un numero entero, positivo o parte imaginaria
negativo, sin decimales, de longitud indefinida
x = 3 + 5j
x=1 y = 8j
y = 35656222554887711 z = 10 -3j
z = -3255522 print( type(x) )
print( type(x) ) print( type(y) )
print( type(y) ) print( type(z) )
print( type(z) )
Tipo de conversiones
Flotantes – float, o numero punto flotante, positivo o negativo,
contiene uno o mas decimales
x = 25 # int
y = 24.85 # float
x = 1.10 z = -3j # complex
y = 1.0e10
z = -325.5522 a = float (x) # convierte un entero en un
print( type(x) ) flotante
print( type(y) ) b = int (y) # convierte un flotante a un entero
print( type(z) ) c = complex (x) # convierte un entero a un
complejo
1.1 Introducción y Tipos de Datos

Cadenas (string)
Las cadenas en Python, deben estar encerradas entre comillas “ ” o apóstrofos ‘ ’
“hola” es lo mismo a ‘hola’

Longitud de las cadenas en Python: función len()


X=‘Nada es imposible’
len(x) #el resultado es 17

Se puede usar parte de una cadena, usando slicing [pos inicial: pos final: pasos] la posición final no se incluye
x=‘Hola todos’
print(x[2:6]) #el resultado es: la t

0 1 2 3 4 5 6 7 8 9

H O L A T O D O S
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1

Los índices también pueden ser negativos slicing [pos inicial: pos final:pasos]
x=‘Hola todos’
print(x[-8: -2]) #el resultado es: la tod
print(x[-5:]) #el resultado es: todos
1.1 Introducción y Tipos de Datos
1.1 Introducción y Tipos de Datos

Cadenas (string)
Las cadenas se pueden concatenar es decir unir con otras cadenas para formar otras cadenas. No se puede
concatenar con números enteros o flotantes
x=“hola ”
y=“mundo”
print(x+y) #el resultado es: hola mundo
print(x+y+3) #el resultado es: error
print((x+y)*3) #el resultado es: hola mundohola mundohola mundo

Python puede comparar cadenas: == y != (igual o diferente). La comparación se hace carácter por carácter. Si estas son iguales
o de lo contrario serán diferentes
x=“hola ”
y=“hola ”
x==y #el resultado es: True (verdadero)

x=“hola ”
y=“Hola ”
x==y #el resultado es: False (falso)
Python también compara cadenas: < o > (menor o mayor). La comparación se hace carácter por carácter. Pero considerando su
código ASCII (128 caracteres u 8 bits) pero ahora su nuevo estándar Unicode (65536 u 16 bits)
x=“hola ”
y=“Hola ”
x<y #el resultado es: False (falso)
ord('h’) #el resultado es: 104 La función ORD() devuelve la posición del carácter en la tabla UNICODE
ord(‘H’) #el resultado es: 72 La función chr() devuelve el carácter de la posición en la tabla UNICODE
1.1 Introducción y Tipos de Datos

Cadenas (string)
String Format.- También se requieren Combinar números con letras hacer tabulados
x=2021
y=“Hola mundo ”
print(x+y) #el resultado es: error

x=2021
y=“Hola mundo {}”
print(y.format(x)) #el resultado es: Hola mundo 2021

Cantidad = 3
Articulo = 365
Precio = 49.95
miorden = “Yo deseo {} piezas del artículo {} por {} soles."
print(miorden.format(Cantidad, Articulo, Precio)) #el resultado es: Yo deseo 3 piezas del artículo 365 por 49.95 soles.

miorden = “Deseo pagar {2} soles, por {0} piezas del artículo {1}."
print(miorden.format(Cantidad, Articulo, Precio)) #el resultado es: Deseo pagar 49.95 soles, por 3 piezas del artículo 365.

Recorridos de cadenas (string)


x= “Por un mundo sostenible”
For i in x:
print(i)
1.1 Introducción y Tipos de Datos

Cadenas (string)
Scape characters.- algunos efectos para imprimir las cadenas.
Carácter \. \n nueva línea
miorden = “Deseo pagar {2} soles \n por {0} piezas \n del artículo {1}."
print(miorden.format(Cantidad, Articulo, Precio))
#el resultado es: Deseo pagar 49.95 soles
por 3 piezas
Code Result del artículo 365.
\' Single Quote
\\ Backslash
\n New Line
\r Carriage
Return
\t Tab
\b Backspace
\f Form Feed
\ooo Octal value
\xhh Hex value
1.1 Introducción y Tipos de Datos
Cadenas (string)
Method Description
capitalize() Converts the first character to upper case
casefold() Converts string into lower case
center() Returns a centered string
count() Returns the number of times a specified value occurs in a string
encode() Returns an encoded version of the string
endswith() Returns true if the string ends with the specified value
expandtabs() Sets the tab size of the string
find() Searches the string for a specified value and returns the position of where it was
found
format() Formats specified values in a string
format_map() Formats specified values in a string
index() Searches the string for a specified value and returns the position of where it was
found
isalnum() Returns True if all characters in the string are alphanumeric rsplit() Splits the string at the specified separator, and returns a list
isalpha() Returns True if all characters in the string are in the alphabet rstrip() Returns a right trim version of the string
isdecimal() Returns True if all characters in the string are decimals split() Splits the string at the specified separator, and returns a list
isdigit() Returns True if all characters in the string are digits splitlines() Splits the string at line breaks and returns a list
isidentifier() Returns True if the string is an identifier startswith() Returns true if the string starts with the specified value
islower() Returns True if all characters in the string are lower case strip() Returns a trimmed version of the string
isnumeric() Returns True if all characters in the string are numeric swapcase() Swaps cases, lower case becomes upper case and vice versa
isprintable() Returns True if all characters in the string are printable title() Converts the first character of each word to upper case
isspace() Returns True if all characters in the string are whitespaces translate() Returns a translated string
istitle() Returns True if the string follows the rules of a title upper() Converts a string into upper case
isupper() Returns True if all characters in the string are upper case zfill() Fills the string with a specified number of 0 values at the beginning
join() Joins the elements of an iterable to the end of the string
ljust() Returns a left justified version of the string
lower() Converts a string into lower case
lstrip() Returns a left trim version of the string
maketrans() Returns a translation table to be used in translations
partition() Returns a tuple where the string is parted into three parts
replace() Returns a string where a specified value is replaced with a specified value
rfind() Searches the string for a specified value and returns the last position of where it
was found
rindex() Searches the string for a specified value and returns the last position of where it
was found
rjust() Returns a right justified version of the string
rpartition() Returns a tuple where the string is parted into three parts
1.1 Introducción y Tipos de Datos

Booleans (lógicos)

Lógicos – verdadero o falso. Se puede tener la necesidad de saber si una expresión es verdadera o falsa
print (10 > 9 )
print (10 == 9 )
print (10 < 9 )

Evaluación de variables y valores


x=“hola”
y=5
print ( bool(x) ) # la respuesta es true
print ( bool(y) ) # la respuesta es true

print ( bool(“”) ) # la respuesta es false


print ( bool(0) ) # la respuesta es false
1.1 Introducción y Tipos de Datos

Listas (list)
Es una colección ordenada y modificable. Permite miembros duplicados.
En Python las listas se escriben entre corchetes rectos.
Estalista = ["apple", "banana", "cherry"] [pos inicial: pos final:pasos] la posición final no se incluye
print(Estalista) # la respuesta es ['apple', 'banana', 'cherry’]
0 1 2 3 4 5 6

apple banana cherry orange kiwi melon mango


-7 -6 -5 -4 -3 -2 -1

➢ Acceso a los elementos


Por ejemplo: imprimir el segundo elemento de la lista anterior
print(Estalista[1]) # la respuesta es banana

➢ Permite índice negativo.


print(Estalista[-1]) # la respuesta es cherry

➢ Permite rangos de índices.


Estalista = ["apple", "banana", "cherry“, "orange", "kiwi", "melon", "mango“]
print( Estalista[:4] ) # la respuesta es ['apple', 'banana', 'cherry', 'orange’]
print( Estalista[-4:-1] ) # la respuesta es ['orange', 'kiwi', 'melon']
1.1 Introducción y Tipos de Datos

Listas (list)
➢ Cambios en elementos
Estalista = ["apple", "banana", "cherry“, "orange", "kiwi", "melon", "mango“]
Estalista[2]= ‘lemon’
print( Estalista ) # la respuesta es ['apple', 'banana', 'lemon', 'orange', 'kiwi', 'melon', 'mango’]
➢ Permite Loops o recorridos por los elementos
for x in Estalista:
print (x) # la respuesta es apple
banana
lemon
orange
kiwi
melon
mango

➢ Verifica la existencia de un elemento. Por ejemplo si melon está en la lista


if “melon" in Estalista:
print(“Si, ‘melon’ está en la lista de frutas") # la respuesta es Si, ‘melon’ está en la lista de frutas
1.1 Introducción y Tipos de Datos

Listas (list)
➢ Determinar la longitud de la lista. Función len()
Estalista = ["apple", "banana", "cherry“, "orange", "kiwi", "melon", "mango“]
print( len(Estalista) ) # la respuesta es 7
➢ Agregar elementos. Estos se agregan al final de la lista con método append()
Estalista = ["apple", "banana", "cherry“, "orange", "kiwi", "melon", "mango“]
Estalista.append (“blueberry“)
print(Estalista) # la respuesta es ['apple', 'banana', 'cherry', 'orange', 'kiwi', 'melon', 'mango', 'blueberry’]
➢ Insertar elementos. Estos se insertan en una posición específica de la lista con método insert()
Estalista = ["apple", "banana", "cherry“, "orange", "kiwi", "melon", "mango“]
Estalista.insert(2, “blueberry“)
print(Estalista) # la respuesta es ['apple', 'banana', 'blueberry', 'cherry', 'orange', 'kiwi', 'melon', 'mango’]
➢ Eliminar elementos.
Se eliminan al final por defecto o en una posición específica de la lista con método pop()
Estalista = ["apple", "banana", "cherry“, "orange", "kiwi", "melon", "mango“]
Estalista.pop()
print(Estalista)
Estalista.pop(1)
print(Estalista) # la respuesta es ['apple', 'cherry', 'orange', 'kiwi', 'melon']
1.1 Introducción y Tipos de Datos

Listas (list)
➢ Borrar la lista con comando del. Este comando borra la lista de memoria
Estalista = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
del Estalista
print(Estalista) # la respuesta es NameError: name 'Estalista' is not defined
➢ Vaciar la lista con método clear()
Estalista = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
Estalista.clear()
print(Estalista) # la respuesta es []
➢ Copiar lista
No puede copiar una lista simplemente escribiendo list2 = list1, porque: list2 solo será una referencia a list1, y los
cambios realizados en list1 también se realizarán automáticamente en list2. Hay formas de hacer una copia, una es
usar el método de lista incorporado copy()
Estalista = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
Nuevalista = Estalista.copy()
print(Nuevalista) # la respuesta es ['apple', 'banana', 'cherry', 'orange', 'kiwi', 'melon', 'mango']
1.1 Introducción y Tipos de Datos

Listas (list)
➢ Copiar lista
Otra forma de copiar es con el método interno list()
Estalista = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
Nuevalista = list(Estalista)
print(Nuevalista) # la respuesta es ['apple', 'banana', 'cherry', 'orange', 'kiwi', 'melon', 'mango’]
➢ Unir dos listas
Existen varias formas de unir listas, una de ellas es la de concatenar (+)
list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]
list3 = list1 + list2
print(list3) # la respuesta es ['a', 'b', 'c', 1, 2, 3]
Otra es usando el método append()
list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]
list1.append(list2)
print(list1) # la respuesta es ['a', 'b', 'c', [1, 2, 3]]
1.1 Introducción y Tipos de Datos

Listas (list)
➢ Métodos incorporados
Python tiene un conjunto de métodos integrados que puede usar en las listas

Method Description
append() Adds an element at the end of the list
clear() Removes all the elements from the list
copy() Returns a copy of the list
count() Returns the number of elements with the specified value
extend() Add the elements of a list (or any iterable), to the end of the
current list
index() Returns the index of the first element with the specified value
insert() Adds an element at the specified position
pop() Removes the element at the specified position
remove() Removes the item with the specified value
reverse() Reverses the order of the list
sort() Sorts the list
1.2 Operadores y expresiones

TEMA 2

Operadores y expresiones
1.2 Operadores y expresiones

•Python tiene los siguientes operadores


• Aritméticos
• De asignación
• De comparación
• Lógicos
• Identidad
• Miembros
• Bitwise (Binarios)
1.2 Operadores y expresiones

Operator Name Example


+ Addition x+y
- Subtraction x-y
* Multiplication x*y
/ Division x/y
% Modulus x%y
** Exponentiation x ** y
// Floor división (división entera) x // y
1.2 Operadores y expresiones
Operadores de asignación
Operator Example Same As
= x=5 x=5
+= x += 3 x=x+3
-= x -= 3 x=x-3
*= x *= 3 x=x*3
/= x /= 3 x=x/3
%= x %= 3 x=x%3
//= x //= 3 x = x // 3
**= x **= 3 x = x ** 3
&= x &= 3 x=x&3
|= x |= 3 x=x|3
^= x ^= 3 x=x^3
>>= x >>= 3 x = x >> 3
<<= x <<= 3 x = x << 3
1.2 Operadores y expresiones

Operadores de comparación

Operator Name Example


== Equal x == y
!= Not equal x != y
> Greater than x>y

< Less than x<y


>= Greater than or equal to x >= y
<= Less than or equal to x <= y
1.2 Operadores y expresiones

Operadores lógicos
Operator Description Example
and Returns True if both statements are true x < 5 and x < 10

or Returns True if one of the statements is true x < 5 or x < 4


not Reverse the result, returns False if the result is true not(x < 5 and x < 10)

Operadores de identidad
Los operadores de identidad se usan para comparar los objetos, no si son iguales, sino si en realidad son
el mismo objeto, con la misma ubicación de memoria:
Operator Description Example
is Returns True if both variables are the same object x is y
is not Returns True if both variables are not the same object x is not y
1.2 Operadores y expresiones

Operadores de miembros
Los operadores de membresía se utilizan para probar si una secuencia se presenta en un objeto:

Operator Description Example


in Returns True if a sequence with the specified value is present in the x in y
object
not in Returns True if a sequence with the specified value is not present in the x not in y
object

Operadores Bitwise
Los operadores bit a bit se usan para comparar números (binarios):
Operato Name Description
r
& AND Sets each bit to 1 if both bits are 1
| OR Sets each bit to 1 if one of two bits is 1
^ XOR Sets each bit to 1 if only one of two bits is 1
~ NOT Inverts all the bits
<< Zero fill left shift Shift left by pushing zeros in from the right and let the leftmost bits fall off
>> Signed right shift Shift right by pushing copies of the leftmost bit in from the left, and let the
rightmost bits fall off
1.3 Entradas y salidas de datos

TEMA 3
Entradas y Salidas
1.3 Entradas y salidas de datos

Entradas
Se usa la función input(). Esta función lee cadenas por lo que habrá que modificar luego el valor
ingresado al tipo de dato correspondiente
➢ Sintaxis de input()
Entero = int(input(“Ingrese un numero entero : “))
Decimal = float(input(“Ingrese un numero decimal : “))
➢ Variables como argumentos en input()
numero1 = int(input(“Ingrese un numero entero : “))
numero2 = int(input(“Ingrese un numero entero mayor a {numero1} : “))
1.3 Entradas y salidas de datos

Scripts o programa
Conjunto de sentencias de Python que se invoca desde la línea de comandos. También puede
Compilarse con Spyder.
➢ Creación de un script
El programa se puede crear desde un editor de textos de Windows con la extensión .py o desde SublimeText
(https://www.sublimetext.com/ y bajar la versión correspondiente).
Desde la línea de comando y la carpeta donde se encuentra el archivo.py

➢ Variables como argumentos en input()


Se pasan parametros o argumentos, y para ello debe importarse en el programa la libreria SYS mediante la instrucción
import sys
print(sys.argv) # se listan los argumentos remitidos
texto = sys.argv[1] # se asigna el valor del primer argumento a la variable texto

En el siguiente ejemplo, se pasan parametros, una cadena y las veces que se deben imprimir
import sys
print(sys.argv)
if len(sys.argv ) == 3:
texto = sys.argv[1]; repeticiones = int(sys.argv[2])

for x in range(repeticiones):
print(x)
En linea de comandos se invoca: python primer_script.py “esta es una prueba” 5
1.3 Entradas y salidas de datos

Salidas
Salida de información por diversos medios, usando el interprete sería por pantalla. Se usa la
sentencia print()
➢ Sintaxis de print()
v = “otro texto”
n = 10
print(“un texto”, v, “ y un número “, n) # Se separan en comas los argumentos a imprimir
➢ Método format() para mayor información https://www.python.org/dev/peps/pep-3101/
c = “Un texto {} y un número {}”.format(v, n)
print( c) # El resultado es ‘Un texto otro texto y un número 10’
print(“Un texto {0} y un número {1}”.format(numero=n, texto=v)) # El 0 y 1 son los índices de los argumentos
print(“Un texto {t} y un número {n}”.format(n=n, t=v))
print( “{:>30}”.format(“palabra”)) # Alineamiento a la derecha en 30 caracteres
print( “{:30}”.format(“palabra”)) # Alineamiento a la izquierda en 30 caracteres
print( “{:.3}”.format(“palabra”)) # truncamiento de 3 caracteres de la “palabra”
print( “{:>30.3}”.format(“palabra”)) # truncamiento de 3 caracteres de la “palabra” alineado a la derecha
print( “{:4d}”.format(10)) # Alineamiento de numero a la derecha con 4 dígitos con 0 izq
print( “{:7.3f}”.format(3.14151926)) # Alineamiento con 3 decimales
print( “{:7.3f}”.format(153.21)) # Alineamiento con 3 decimales
1.4 Controlando el flujo

TEMA 4
Controlando el flujo
1.4 Controlando el flujo

If …elif…else
Python admite las condiciones lógicas habituales de las matemáticas:
Equals: a == b
Not Equals: a != b
Less than: a < b
Less than or equal to: a <= b
Greater than: a > b
Greater than or equal to: a >= b

Estas condiciones se pueden usar de varias maneras, más comúnmente en “sentencias if" y bucles. Se
escribe una “sentencia if" utilizando la palabra clave if.
a = 33
b = 200
if b > a:
print("b es mayor que a")
# la respuesta es b es mayor que a
else:
print("b es menor o igual que a")
# la respuesta es b es menor o igual que a
1.4 Controlando el flujo

If …elif…else
Indentación
Python se basa en la sangría (espacio en blanco al comienzo de una línea) para definir el alcance en el
código. Otros lenguajes de programación a menudo usan llaves para este propósito.
a = 33
b = 200
if b > a:
print("b es mayor que a") # La respuesta es error

Elif
La palabra clave elif es la forma de pitones de decir "si las condiciones anteriores no eran ciertas,
entonces intente esta condición".
a = 33
b = 200
if b > a:
print("b es mayor que a")
elif a == b:
print("b es igual que a")
1.4 Controlando el flujo

If …elif…else
Else
La palabra clave else captura cualquier cosa que no esté atrapada por las condiciones anteriores.
a = 33
b = 200
if b > a:
print("b es mayor que a")
elif a == b:
print("b es igual que a")
else:
print("a es mayor ques b")

If sentencia corta (en una línea)


Si solo tiene que ejecutar una instrucción, puede ponerla en la misma línea que la instrucción if.
a=42
b=200
if b > a: print("b es mayor que a")
1.4 Controlando el flujo

If …elif…else
If .. else sentencia corta (en una línea)
Si solo tiene que ejecutar una instrucción, una para if y otra para más, puede poner todo en la misma
línea:
a=2
b=330
print("A") if a > b else print("B") # La respuesta es B
If .. elif … else sentencia corta (en una línea)
Esta técnica se conoce como operadores ternarios o expresiones condicionales.
a=330
b=330
print("A") if a > b else print("=") if a == b else print("B") # La respuesta es =

Condiciones lógicas: and y or


Esta técnica se conoce como operadores ternarios o expresiones condicionales.
a = 200
b = 33
c = 500
if a > b or a > c:
print("Al menos una de las condiciones es verdadera") # La respuesta es =
1.4 Controlando el flujo

If Anidados
Puede tener declaraciones if dentro de declaraciones if, esto se llama instrucciones if anidadas.
x = 41
if x > 10:
print("Mas de diez,")
if x > 20:
print("y también es mayor a 20!")
else:
print("pero no mas de 20") # La respuesta es Mas de diez, y también es mayor a 20!

sentencia pass
Las sentencias if no pueden estar vacías, pero si por alguna razón tiene una sentencia if sin contenido,
ingrese la sentencia pass para evitar un error.
a = 33
b = 200
if b > a:
pass
1.4 Controlando el flujo

While … loops
Con el ciclo while podemos ejecutar un conjunto de
declaraciones siempre que una condición sea verdadera.
i=1
while i < 6:
print(i)
i += 1

Instruccion Break
Con la instrucción break podemos detener el ciclo
incluso si la condición while es verdadera.
i=1
while i < 6:
print(i)
if i == 3:
break
i += 1
1.4 Controlando el flujo

While … loops
Instruccion Continue
Con la instrucción continue podemos detener la iteración
actual y continuar con la siguiente:
i=0
while i < 6:
i += 1
if i == 3:
continue
print(i)

Instruccion Else
Con la instrucción else podemos ejecutar un bloque de código
una vez cuando la condición ya no es verdadera:
i=1
while i < 6:
print(i)
i += 1
else:
print(“ya no es menos de 6”)
1.4 Controlando el flujo

For … loops
Un bucle for se usa para iterar sobre una secuencia (que es una lista, una tupla, un diccionario, un
conjunto o una cadena). Esto es menos como la palabra clave for en otros lenguajes de programación,
y funciona más como un método iterador como se encuentra en otros lenguajes de programación
orientada a objetos. Con el bucle for podemos ejecutar un conjunto de declaraciones, una vez para cada
elemento de una lista, tupla, conjunto, etc.

frutas = ["apple", "banana", "cherry"]


for x in frutas:
print(x)

El bucle for no requiere una variable de indexación para establecer de antemano

Bucle a traves de una cadena (string)


Incluso las cadenas son objetos iterables, contienen una secuencia de caracteres:
for x in "banana":
print(x)
1.4 Controlando el flujo

For … loops
Sentencia Break
Con la instrucción break podemos detener el ciclo antes de que haya pasado por todos los elementos:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)
if x == "banana":
break

Instruccion Continue
Con la instrucción continue podemos detener la iteración actual del ciclo y continuar con la siguiente:

fruits = ["apple", "banana", "cherry"]


for x in fruits:
if x == "banana":
continue
print(x)
1.4 Controlando el flujo

For … loops
La función Range()
Para recorrer un conjunto de código un número específico de veces, podemos usar la función range (), La
función range () devuelve una secuencia de números, comenzando desde 0 por defecto, y se incrementa en
1 (por defecto), y termina en un número específico.

for x in range(6):
print(x)

Tenga en cuenta que el rango (6) no son los valores de 0 a 6, sino los valores de 0 a 5.
La función range () se establece por defecto en 0 como valor inicial, sin embargo, es posible especificar el
valor inicial agregando un parámetro: range (2, 6), que significa valores de 2 a 6 (pero sin incluir 6):

for x in range(2, 6):


print(x)
1.4 Controlando el flujo

For … loops
Palabra clave Else
La palabra clave else en un bucle for especifica un bloque de código que se ejecutará cuando finalice el
bucle:

for x in range(6):
print(x)
else:
print("Finally finished!")

Bucles anidados (Nested Loops)


Un bucle anidado es un bucle dentro de un bucle. El "bucle interno" se ejecutará una vez por cada
iteración del "bucle externo":

adj = ["red", "big", "tasty"]


fruits = ["apple", "banana", "cherry"]

for x in adj:
for y in fruits:
print(x, y) # la respuesta es red apple
red banana …..
1.4 Controlando el flujo

For … loops
Modificar Listas
Se puede modificar listas con las siguientes instrucciones. Por ejemplo se tiene una lista de números y se
quiere esta lista multiplicada por 10
indice = 0
numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for elemento in numeros:
numeros[indice] *= 10
indice+=1
numeros # la respuesta es [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

Modificar Listas
Se puede modificar listas con las siguientes instrucciones. Por ejemplo se tiene una lista de números y se
quiere esta lista multiplicada por 10 y ahora se hará con la función enumerate()

numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]


for indice, elemento in enumerate(numeros):
print(indice, elemento)
numeros[indice] *= 10
numeros # la respuesta es [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
1.4 Controlando el flujo

For y while en 1 linea


y =0
suma = 0
num = int(input("Ingrese un numero:"))

print()
for x in range(int(num)):
suma += (x + 1 )
print("Con (FOR) La suma es:", suma)

For en una linea:


print("Con (FOR): ", sum(x for x in range(1, num+1)))
# la respuesta es [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
nueva_lista = [print(x) for x in [1,2,3,4,5,6] if x < 5]

while y < num:


y += 1
suma += y

print("Con (WHILE):", suma)


1.5 Matrices

35 12.5

-2.89 3.45

TEMA 5
Matrices
1.5 Matrices

Matrices con Listas de Python


Las Matrices son disposiciones bidimensionales de valores en filas y columnas. Las LISTAS permiten
serie de datos en una solo dimensión (se pueden emplear para vectores). Entonces una lista de listas de
números
pueden representar una matriz.
columnas del 0 al 2
Matriz filas -3 0 -2 1 -1 2
3x3 del 0 -3 0 12 1 15
al 2 -2 1 9 3 10
-1 2 14 7 6
Solo valores de la
El elemento señalado de la matriz,
matriz
se denota Mij o M23 y en Python las filas
y columnas inician en cero por lo que seria
M12 = 10
1.5 Matrices

Matrices con Listas de Python


Ahora veremos las operaciones con matrices en Python, se tiene la siguientes matriz 4 x 3 y en
En Listas de Python se definiría como la figura del costado derecho

➢ Creación de matriz como listas.


M = [ [1, 2, 3], [2, 12, 6], [1, 0, -3], [0, -1, 0] ]
print(M) La respuesta es [[1, 2, 3], [2, 12, 6], [1, 0, -3], [0, -1, 0]]
print(M[0]) La respuesta es [1, 2, 3] es una lista o vector
print(M[1][1]) La respuesta es 12 es un escalar
1.5 Matrices

Matrices con Listas de Python


➢ Recorridos de matrices
M=[[1, 0, 0], [0, 1, 0], [0, 0, 1]]
print(M[-1][0]) # La respuesta es 0
print(M[-1][-1]) # La respuesta es 1
print(‘-’*30)
for i in range (0, 3): # Con range el que varía es el índice i
print(M[i]) # La respuesta es cada vector
print(‘-’*30)
for i in range(0, 3):
for j in range(0, 3):
print(M[i][j]) # La respuesta es cada vector
➢ Se aplican operaciones de Listas, por ejemplo para crear una matriz
M=[]
for i in range (3): # Con range el que varía es el índice i
a=[0]*6 # La respuesta es [0, 0, 0, 0, 0, 0]
M.append( a)
print(M) # La respuesta es [ [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0] ]
1.5 Matrices

Matrices con Listas de Python


➢ Creación
M=[[1, 0, 0], [0, 1, 0], [0, 0, 1]]
print(M[-1][0]) # La respuesta es 0
print(M[-1][-1]) # La respuesta es 1
print('-’)
for i in range (0, 3): # Con range el que varía es el índice i
➢ Longitud
M=[[1, 0, 0], [0, 1, 0], [0, 0, 1]]
print(len(M)) # La respuesta es 3 porque es el numero de filas
print(len(M[0])) # La respuesta es 3 porque es el numero de columnas
➢ Creación y carga de una matriz nxm
n = int(input("Ingrese el numero de filas: "))
m = int(input("Ingrese el numero de columnas: "))
A= []
for i in range(n):
A.append( [0] * m )
print(len(A[0]))

for i in range (n):


for j in range(m):
A[i][j] = float(input("Componente ({0},{1}): ".format(i, j)))
print(A)
INSERTAR NOMBRE DE ACTIVIDAD

PASOS DE ACTIVIDAD individual /grupal:

Ingresar al colab personal con su cuenta gmail

Copia el enunciado del problema señalado por el profesor y péguelo en el


colab

Desarrolle el ejercicio junto con un compañero sea en el laboratorio o en la


sala grupal creada por el docente.
Resolución de ejercicios

Debe resolver los ejercicios señalados por el


profesor que se encuentran en el documento:

01 - 02.2 Fundamentos de Programación en Python


- Guía laboratorio y Casos propuestos.pdf

Este documento se encuentra en el aula virtual en


la unidad 1
CONCLUSIONES

01 Python estándar ha sido desarrolladas con la arquitectura orientada a objetos.

La arquitectura Orientada a Objetos, simplifica las instrucciones de control


02

03 Los tipos de datos como Listas y Cadenas, tienen mas funcionalidades en comparación
con otros lenguajes de programación

04
BIBLIOGRAFÍA

Direcciones electrónicas (hipervinculos en las diapositivas)

LUTZ, MARK (2013) Learning Python. 5th Edition. California: O’Reilly.

RAMALHO, LUCIANO (2015) Fluent Python: Clear, Concise, and Effective Programming
(inglés) 1st Edición. California: O’Reilly.
Material producido por la
Universidad Peruana de
Ciencias Aplicadas
Continúa con las actividades Autor:
propuestas Norman Reyes Morales

COPYRIGHT © UPC
2023 – Todos los
derechos reservados

También podría gustarte