0% encontró este documento útil (0 votos)
3 vistas43 páginas

Introducción al Lenguaje Python

El documento es una introducción al lenguaje de programación Python, destacando sus características como ser de alto nivel, fácil de aprender y de código abierto. Se abordan temas como la instalación, tipos de datos, variables, estructuras de control y ejemplos prácticos de programación. Además, se presentan ejercicios y ejemplos para ilustrar conceptos clave en Python.

Cargado por

axel montes
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)
3 vistas43 páginas

Introducción al Lenguaje Python

El documento es una introducción al lenguaje de programación Python, destacando sus características como ser de alto nivel, fácil de aprender y de código abierto. Se abordan temas como la instalación, tipos de datos, variables, estructuras de control y ejemplos prácticos de programación. Además, se presentan ejercicios y ejemplos para ilustrar conceptos clave en Python.

Cargado por

axel montes
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

Introducción a Python

Luisa María Zapata Saldarriaga


2023

Una Facultad abierta


y transformadora
Una Facultad abierta y transformadora ‹Nº›
Python

Una Facultad abierta y transformadora


Python
Lenguaje de programación…
⚬ De alto nivel
⚬ De propósito general
⚬ De fácil lectura
⚬ Interpretado

Creado por el holandés Guido


van Rossum en 1989 y popular
desde su versión 2.0 lanzada
en el 2000. Actualmente trabaja
en Dropbox.
Ventajas Python
• Es de código abierto (certificado por la OSI).
• Es interpretable y compilable.
• Es fácil de aprender gracias a que su sintaxis es bastante
legible para los humanos.
• Es un lenguaje maduro (29 años).
• Es fácilmente extensible e integrable en otros lenguajes (C,
java).
• Esta mantenido por una gran comunidad de desarrolladores y
hay multitud de recursos para su aprendizaje.
Tipos de ejecución
Interpretado en la consola de Python
Se ejecuta cada instrucción que introduce el usuario de manera
interactiva.

Interpretado en fichero
Se leen y se ejecutan una a una todas las
instrucciones del fichero.
Descargar e instalar

• Python
[Link]/downloads/
• Spyder
[Link]
• Visual Studio Code
[Link]
• La plataforma de desarrollo Anaconda:
[Link]
Programas en Python
Un programa Python está compuesto por una
secuencia de instrucciones que son ejecutadas
por el intérprete en una terminal.
print('Hola')
name = input('¿cúal es su nombre?: ')
pers = 12
print(name,'Hay', pers, 'personas')

Sintaxis: reglas para un programa válido

Semántica: significado de un programa


Objetos de datos (Data objects)

En Python, a los datos se les llama objetos y


pueden ser escalares o no-escalares.

Los objetos escalares pueden ser de tipo:

int: números enteros (ej: 5)


float: números reales (ej: 3.465)
bool: True y False (verdadero y falso)
None: vacío (ausencia de datos)
Variables

En Python, las variables son nombres que se


pueden relacionar con los objetos de datos.
memoria

base = 10
base
height = 3 10
area = base*height/2 height
b = base 3
b = 8 area
15
b 8
Variables
Una variable es la que permite
almacenar un valor al asignarlo a un
nombre el cual puede ser utilizado para
referirse al valor más adelante en el
programa.

Para asignar una variable, se utiliza el


signo igual ( = ). A diferencia de lo que
se ha visto hasta el momento, esta
instrucción de asignación no genera
ninguna salida en la consola de
Python.
Variables

Las variables pueden ser reasignadas


tantas veces como se quiera para
cambiar su valor.

En Python las variables no tienen un


tipo específico, es decir, a una variable
se puede asignar una cadena y luego un
entero.
Nombre de variables
Los nombre de las variables tienen algunas restricciones;

1. Los únicos caracteres que permite Python para nombre variables son letras, números y
guiones bajos.
2. Las variables no pueden empezar con número.
3. No pueden tener espacios
Tipos de Variables

Cadena = string Concatenación

str('Hola') == 'Hola' "Hola" + " " + "Mundo"

'Hola' == "Hola" "Yo tengo" + "20" + "años"

' "Hola" ' == " \"Hola\" " "El número" + "3,1416"


+ " se llama pi"
Tipos de Variables

Enteros = integers Operaciones

int(10) == 10 int(10) + int(20)

var1 = 10 / 20 == 0.5
var1 = 10
var1 = 10 // 20 == 0

var2 = -10 var2 = -10 + 20


Tipos de Variables

Flotantes = floating Operaciones

float(10) == 10.0 float(1.0) + float(2.0)

var1 = 0.28 var1 = 1.0 + 2.0

var2 = -0.57 var2 = -0.2 + 2.0


Tipos de Variables

Booleano = boolean Operaciones

True == 1.0 == (not False) True + (False / True)

False == 0.0 == int(False) True + True

False* False
Tipos de Variables
¿Cómo puedo saber que tipo de variable
tengo utilizando python?
type(Elemento)

type(1) == int type(2.5) == float

type(True) == bool c = 5//3


type(c) == int
type('a') == str
Entrada/salida (Input/Output)
Para capturar datos que el usuario quiera ingresar
al programa o para mostrarle resultados:

Print ‘what is your name?’

Read name

Print ‘good morning’ ¿ Cómo lo hago en


Python ?
Print name

Print ‘!’
Entrada/salida (Input/Output)
Para capturar datos que el usuario quiera ingresar
al programa o para mostrarle resultados:

name = input('What is your name?')


Print ‘what is your name?’
print('Good morning', name, '!')
Read name
print('Good morning' + name + '!')

Print ‘good morning’

Print name age = input('How old are you?')


print('In one year you will be', int(age)+1)
Print ‘!’ print('In one year you will be', age+1)
error
¡input() siempre entrega un string!
Cadenas de caracteres (Strings)
Un tipo de dato no-escalar muy utilizado es la
cadena de caracteres, denotado por str en
Python. Se usan las comillas (sencillas o dobles)
para representar un str literal.

name = 'Juan Rodríguez'


country = 'Colombia'
d_quotes = "Comillas dobles también"

var1 = name + country concatenar


var2 = name * 2 replicar
var3 = name + 3
var4 = name * country error
Manipulando (Handling) strings

Se pueden realizar diferentes operaciones con las cadenas de


caracteres, veamos algunas de ellas:
• Para conocer la longitud (número de letras) de un carácter se usa el
comando len. Por ejemplo:

name = 'Juan Rodríguez'


longitud de un str
f = len(name)

• Indexación: A cada carácter de una cadena de caracteres se le asigna


un índice.
Manipulando (Handling) strings
• Forma en la que se indexa un string:

• Índices negativos:

• Partición extendida (Cf no se incluye):


string[C₀:Cf:paso]
Manipulando (Handling) strings
• Con el índice se puede escoger un solo carácter de la
cadena, por ejemplo:
f = len(name)
name[0]
indexar un str
name[f-1]
name[f]
name[-1]

• También se pueden tomar partes de una cadena:

name[0:3] Segmentar (slice) un str


name[0:f] -> Desde el principio hasta el carácter con índice f (excluido)
name[:] -> Crea un clon de la variable, copia idéntica en otra posición de mem
name[:4] -> Desde el principio hasta el carácter con el índice 4 (excluido)
name[7:] -> Desde el carácter 7 hasta el final
Manipulando (Handling) strings
• Con la partición extendida se puede dar un paso con el
cual se segmenta la cadena de caracteres, por ejemplo:

name = 'Juan Rodríguez’


print(name[::2]) Segmentación extendida
>> Ja orge

print(name[-9::2])
>> Rdíez

print(name[::-1]) -> Invierte el string


>> zeugírdoR nauJ
Manipulando (Handling) strings
• Con los comandos .upper() .lower() .replace(n,v) se
puede crear un nuevo string, respectivamente, en
mayúsculas, minúsculas, o con caracteres
remplazados, por ejemplo.

name = 'Juan Rodríguez’


print([Link]())
>> JUAN RODRÍGUEZ

print([Link]())
>> juan rodríguez

print([Link]('e','') .replace(‘u',''))
>> Jan Rodrígz
Manipulando (Handling) strings
• Por último, entre las operaciones relevantes que se
pueden hacer con strings, se tiene la identificación de la
pertenencia de un string en otro, por ejemplo:
name = 'Juan Rodríguez'
print('Juan' in name )
>> True

print('Carlos' in name )
>> False

• y la conversión de un escalar a un string: str(5)


Condicionales (Conditionals)
• Las instrucciones condicionales en
Python se escriben así:
apples = int(input('Price of apples: '))
mangos = int(input('Price of mangos: '))
if apples > mangos: yes no
print('Mangos are cheaper') a>m
else:
print('Apples are cheaper') Print ‘Mangos are cheaper’

Programas de tiempo constante: sin Print ‘Apples are cheaper’


importar los datos de entrada, hay un
máximo número de instrucciones que el
programa ejecuta
Condicionales anidados
• (Nested conditionals) Las instrucciones
condicionales pueden anidarse:

if x%2 == 0:
if x%3 == 0:
print('Divisible by 2 and 3')
else:
print('Divisible by 2 and not by 3')
elif x%3 == 0:
print('Divisible by 3 and not by 2')
Ciclo mientras (While loop)
• Los ciclos en Python se implementan
mediante la instrucción while así:

N = int(input('Enter a number: '))


num = 1
sum = 0
while num <= N:
sum = sum + num
num = num + 1
print('The first', N, 'integers sum', sum)
Ciclo for (loop) y la función range

• Los ciclos for permiten expresar de


forma más simple ciclos que iteran sobre
una secuencia de enteros.

suma = 0

for i in (1,2,3,4,5):

tab suma=suma+i

print(suma)
Ciclo for (loop) y la función range

• Los ciclos for permiten expresar de forma más


simple ciclos que iteran sobre una secuencia de
enteros.
• range(0,n,1) crea un iterativo desde 0 hasta n-1
con paso 1, esto es, 0,1,2,3,..,n-1
suma = 0
n = int(input('Enter an integer number: '))

for i in range(0,n+1):

tab suma=suma+i

print(suma)
for loops with strings
• Los ciclos for también pueden iterar
sobre strings…

#Print a string with each letter followed by a star


name = input('Enter your name: ')
for let in name:
print(let + '*')

'''Print a string with each letter followed by a star,


but using the end configuration of print'''
name = input('Enter your name: ')
for let in name:
print(let, end='*')
Exhaustive enumeration
• El siguiente programa calcula la raíz
cúbica de un entero, si la tiene.
n = int(input('Enter an integer number: '))
cube = 0
while cube**3 < abs(n):
cube = cube + 1 enumeración exhaustiva

if cube**3 != abs(n):
print(n, 'is not a perfect cube')
else:
if n < 0:
cube = -cube
print('Cube root of', n, 'is', cube)
for loops and range
• Los ciclos for nos permiten expresar de una
forma más simple, por ejemplo, ciclos que iteran
sobre una secuencia de enteros.

n = int(input('Enter an integer number: '))


for cube in range(0, abs(n)+1): cube = 0
if cube **3 >= abs(n): while cube**3 < abs(n):
cube = cube +1
break

if cube**3 != abs(n):
print(n, 'is not a perfect cube')
else:
if n < 0:
cube = -cube
print('Cube root of', n, 'is', cube)
Aproximate solutions
• Calcular una aproximación de la raíz
cuadrada de un número positivo:
#Find an approximation of the square root
x = 25
epsilon = 0.01
step = epsilon**2
guesses = 0
ans = 0.0
while abs(ans**2 - x) >= epsilon and ans <= x:
ans += step
guesses += 1
if abs(ans**2 - x) >= epsilon:
print('Couldn\'t find the square root of', x)
else:
print(ans, 'is approximately the square root of', x)
print('There were', guesses, 'guesses')
Ejemplo
Los empleados de una fábrica trabajan en dos turnos (de 8 horas),
diurno y nocturno. Teniendo en cuenta las siguientes reglas para el
pago del salario:
• La tarifa de las horas diurnas es de 6 pesos
• La tarifa de las horas nocturnas es de 10 pesos
• En caso de ser domingo, la tarifa se incrementará en 200 pesos
el turno diurno y 300 pesos el turno nocturno
Calcule el costo de la nómina mensual (costo total de salarios) de
la fábrica
Ejemplo
• Una máquina dispensadora de productos requiere un
algoritmo para calcular las devueltas en monedas.
• El objetivo del algoritmo es que, dada una cantidad a
devolver, calcule la combinación que genere la mínima
cantidad de monedas, utilizando denominaciones de
$1000, $500, $200, $100 y $50.
• El sistema deberá decir también lo que resta para
lograrla.
Ejemplo
Resuelva con el método de Polya, realice
una prueba de escritorio e implemente en
Python, el siguiente problema:
• Dada una palabra ingresada por el
usuario verifique si es un palíndromo o
no.
Ejemplo
Resuelva con el método de Polya, realice una prueba de
escritorio e implemente en Python, los siguientes
problemas:
• Un programa que lea un numero de tres cifras e
imprima el número al revés.
• Otro programa que sume dos tiempos que incluyen
horas, minutos y segundos. Los tiempos llegan al
algoritmo así: por ejemplo 74532, queriendo decir 7
horas, 45 minutos y 32 segundos.
Ejemplo
Resuelva. El índice de masa corporal se calcula así:

Desarrolle un algoritmo que reciba la masa y la estatura


del usuario y que muestre su ICM y la clasificación de su
estado nutricional según la tabla:
Ejemplo
Haga un algoritmo que muestre el siguiente patrón
en la pantalla:

#
###
#####
#######
#########

El tamaño del patrón estará determinado por un


número entero impar que ingrese el usuario. En el
ejemplo mostrado, el tamaño de la figura es 9.
Gracias
[Link]
Fecha y ciudad

Una Facultad abierta


transformadora‹Nº›
Una Facultad abierta yytransformadora

También podría gustarte