Está en la página 1de 26

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 3
Introducción y Tipo Entradas y Salidas
de Datos – Cadenas y
Listas
TEMARIO

TEMA 1
Introducción y Tipo de Datos – Cadenas y Listas
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
del artículo 365.

Code Result
\' 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.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
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

ACTIVIDAD
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.

02

03

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
2020 – Todos los
derechos reservados

También podría gustarte