Notas de Python
TUTORIAL DE PYTHON
Cap.1
Introducción
Python es un lenguaje de programación de propósito general, interpretado, interactivo, orientado a objetos y de alto nivel.
lenguaje de programación de alto nivel. Fue creado por Guido van Rossum entre 1985 y 1990.
Al igual que Perl, el código fuente de Python también está disponible bajo la Licencia Pública General de GNU
(GPL). Este tutorial ofrece suficiente comprensión sobre el lenguaje de programación Python.
¿Por qué aprender Python?
Python es un lenguaje de secuencias de comandos de alto nivel, interpretado, interactivo y orientado a objetos.
Python está diseñado para ser altamente legible. Utiliza palabras clave en inglés con frecuencia, mientras que
otros idiomas utilizan puntuación, y tiene menos construcciones sintácticas que otros
idiomas.
Python es UNA NECESIDAD para estudiantes y profesionales en activo para convertirse en un gran Software
Ingeniero especialmente cuando trabajan en el dominio del desarrollo web. Haré una lista a continuación.
algunas de las principales ventajas de aprender Python:
Python es interpretado− Python es procesado en tiempo de ejecución por el intérprete. Tú
no es necesario compilar tu programa antes de ejecutarlo. Esto es similar a PERL
y PHP.
Python es interactivo: en realidad puedes sentarte en un prompt de Python e interactuar con él.
el intérprete directamente para escribir tus programas.
Python es orientado a objetos - Python admite el estilo orientado a objetos o
técnica de programación que encapsula código dentro de objetos.
Python es un lenguaje para principiantes− Python es un gran lenguaje para el
programadores de nivel principiante y apoya el desarrollo de una amplia gama de
aplicaciones que van desde el procesamiento de texto simple hasta navegadores de WWW y videojuegos.
Características de Python
Las siguientes son características importantes de la programación en Python−
Soporta métodos de programación funcional y estructurada, así como POO.
Puede usarse como un lenguaje de secuencias de comandos o puede compilarse a código de bytes para
construyendo aplicaciones grandes.
Proporciona tipos de datos dinámicos de muy alto nivel y soporta tipos dinámicos
verificando.
Soporta la recolección automática de basura.
Se puede integrar fácilmente con C, C++, COM, ActiveX, CORBA y Java.
Aplicaciones de Python
Como se mencionó antes, Python es uno de los lenguajes más utilizados en la web. Estoy
voy a listar algunos de ellos aquí:
Fácil de aprender− Python tiene pocas palabras clave, una estructura simple y un claramente
sintaxis definida. Esto permite al estudiante aprender el idioma rápidamente.
Fácil de leer− El código Python está más claramente definido y es más visible a la vista.
Fácil de mantener− El código fuente de Python es bastante fácil de mantener.
Una amplia biblioteca estándar: la mayor parte de la biblioteca de Python es muy portátil y
compatible entre plataformas en UNIX, Windows y Macintosh.
Modo interactivo− Python tiene soporte para un modo interactivo que permite
pruebas interactivas y depuración de fragmentos de código.
Portátil− Python puede ejecutarse en una amplia variedad de plataformas de hardware y tiene el
misma interfaz en todas las plataformas.
Extendible− Puedes agregar módulos de bajo nivel al intérprete de Python. Estos
los módulos permiten a los programadores agregar o personalizar sus herramientas para que sean más
eficiente.
Bases de datos− Python proporciona interfaces a todas las principales bases de datos comerciales.
Programación de GUI− Python admite aplicaciones GUI que pueden ser creadas y
ported a muchas llamadas al sistema, bibliotecas y sistemas Windows, como Windows
MFC, Macintosh y el sistema X Window de Unix.
Escalable− Python ofrece una mejor estructura y soporte para programas grandes
que la programación en shell.
Python es un lenguaje de secuencias de comandos de alto nivel, interpretado, interactivo y orientado a objetos.
Python está diseñado para ser altamente legible. Utiliza palabras clave en inglés con frecuencia, mientras que
otros idiomas usan signos de puntuación, y tiene menos construcciones sintácticas que otros
idiomas.
Python es interpretado− Python es procesado en tiempo de ejecución por el intérprete. Tú
no necesitas compilar tu programa antes de ejecutarlo. Esto es similar a PERL
y PHP.
Python es interactivo− Puedes sentarte en un símbolo de sistema de Python e interactuar con
el intérprete directamente para escribir tus programas.
Python es orientado a objetos: Python admite el estilo orientado a objetos o
técnica de programación que encapsula el código dentro de objetos.
Python es un lenguaje para principiantes− Python es un gran lenguaje para el
programadores de nivel principiante y apoya el desarrollo de una amplia gama de
aplicaciones desde procesamiento de texto simple hasta navegadores de la WWW y juegos.
Cap. 2
Palabras clave e identificadores de Python
Hoy aprenderemos sobre palabras clave (palabras reservadas en Python) e identificadores (nombres)
dado a variables, funciones, etc.).
Palabras clave de Python
Las palabras clave son las palabras reservadas en Python.
No podemos usar una palabra clave como unvariablename, functennombre o cualquier otro identificador.
Se utilizan para definir la sintaxis y la estructura del lenguaje Python.
En Python, las palabras clave son sensibles a mayúsculas y minúsculas.
There are 33 keywords in Python 3.7. This number can vary slightly over the course
a menudo.
Todas las palabras clave exceptoVerdadero, FalsoyNingunoestán en minúsculas y deben ser
escrito tal como están. La lista de todas las palabras clave se da a continuación.
Falso esperar otro importar pasar
None romper excepto en aumentar
Verdadero clase finalmente es volver
y continuar para lambda intentar
como def de no local mientras
afirmar del global no con
Rendimiento
asíncrono elif si o
Identificadores de Python
Un identificador es un nombre dado a entidades como clases, funciones, variables, etc. Ayuda a
diferenciar una entrada de otra.
Reglas para escribir identificadores
1. Los identificadores pueden ser una combinación de letras en minúsculas (a a z) o mayúsculas
(Ato Z)o dígitos(0 a 9)o un guion bajo_. Nombres comomyClass, var_1y
imprimir_esto_en_pantallatodos son ejemplos válidos.
2. Un identificador no puede comenzar con un dígito.1variablees inválido, perovariable1 es un
nombre válido.
3. Las palabras clave no se pueden usar como identificadores.
E.g global =1
Salida Archivo "<entrada interactiva>", línea 1 global = 1
^Error de sintaxis:
sintaxis inválida
4. No podemos usar símbolos especiales como !, @, #, $, %etc. en nuestro identificador.a@ =0
Salida Archivo "<entrada interactiva>", línea 1 a@ = 0 ^Error de sintaxis:
sintaxis inválida
5. Un identificador puede tener cualquier longitud.
Cosas para recordar
Python es un lenguaje sensible a mayúsculas y minúsculas. Esto significa que, Variable y variable no son los
lo mismo. Siempre da a los identificadores un nombre que tenga sentido. Mientras c = 10 es válido
nombre, contar escritura = 10 tendría más sentido, y sería más fácil de averiguar
lo que representa cuando miras tu código después de una larga pausa.
Múltiples palabras pueden ser separadas usando un guion bajo, así como esta_es_una_variable_larga.
Cap.3
Declaración de Python, sangría y
Comments
En este tutorial, aprenderás sobre las declaraciones de Python, por qué la indentación es
importante y uso de comentarios en programación.
Declaración de Python
Las instrucciones que un intérprete de Python puede ejecutar se llaman declaraciones. Para
ejemploa = 1es una declaración de asignació[Link]ónparadeclaraciónmientras
las declaraciones, etc. son otros tipos de declaraciones que se discutirán más adelante.
Declaración de varias líneas
En Python, el final de una declaración se marca con un carácter de nueva línea. Pero nosotros
se puede hacer que una declaración se extienda por múltiples líneas con la continuación de línea
carácter (\). Por ejemplo:
a=1+2+3+\
4+5+6+
7+8+9
Esta es una continuación de línea explícita. En Python, la continuación de línea se implica.
dentro de los paréntesis ( ), corchetes [ ], y llaves { }. Por ejemplo, podemos
implementa la declaración de múltiples líneas anterior como:
a = (1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9)
Aquí, los paréntesis circundantes () hacen la continuación de línea implícitamente. Igual
es el caso de [ ] y { }. Por ejemplo:
colors = [‘red’, ‘blue’, ‘green’]
También podemos poner múltiples declaraciones en una sola línea usando punto y coma, como
sigue:a = 1; b = 2; c = 3
Indentación de Python
La mayoría de los lenguajes de programación como C, C++ y Java utilizan llaves { } para
define un bloque de código. Python, sin embargo, usa sangrías.
Un bloque de código (cuerpo de unfunción, bucle, etc.) comienza con sangría y termina
con la primera línea sin sangrar. La cantidad de sangrado depende de ti, pero
debe ser consistente en todo ese bloque.
Generalmente, se utilizan cuatro espacios en blanco para la indentación y se prefieren sobre
pestañas. Aquí hay un ejemplo.
Para i en rango(1,11):
imprimir(i)
si i == 5: romper
La aplicación de la indentación en Python hace que el código se vea ordenado y
limpio. Esto resulta en programas de Python que se ven similares y consistentes.
La indentación se puede ignorar en la continuación de línea, pero siempre es una buena idea
indentar. Hace que el código sea más legible. Por ejemplo:
si es verdadero:
print('Hola')
a=5
y
si Verdadero: imprimir('Hola'); a = 5
ambos son válidos y hacen lo mismo, pero el estilo anterior es más claro.
La indentación incorrecta resultará enError de sangría.
Comentarios de Python
Los comentarios son muy importantes al escribir un programa. Describen qué es
sucediendo dentro de un programa, de modo que una persona que mira el código fuente no lo haga
no tener dificultades para resolverlo.
Podrías olvidar los detalles clave del programa que acabas de escribir en un mes.
tiempo. Entonces, tomarse el tiempo para explicar estos conceptos en forma de comentarios es
siempre fructífero.
En Python, usamos el símbolo de almohadilla (#) para comenzar a escribir un comentario.
Se extiende hasta el carácter de nueva línea. Los comentarios son para programadores para
mejor entender un programa. El intérprete de Python ignora los comentarios.
#Este es un comentario
#imprimir Helloprint('Hola')
Comentarios de varias líneas
We can have comments that extend up to multiple lines. One way is to use
el símbolo de hash (#) al principio de cada línea. Por ejemplo:
Este es un comentario largo
y se extiende
#a múltiples líneas
Otra forma de hacer esto es usar comillas triples, ya sea ‘’’ o “”.”
Estas comillas triples se utilizan generalmente para cadenas de múltiples líneas. Pero pueden ser
también se utiliza como un comentario de múltiples líneas. A menos que no sean cadenas de documentación, lo hacen.
no genere ningún código extra.
Esto es
también un ejemplo perfecto
comentarios de múltiples líneas”””
Docstrings en Python
Un docstring es la abreviatura de cadena de documentación.
Las docstrings de Python (cadenas de documentación) son lascadenaliterales que aparecen
justo después de la definición de una función, método, clase o módulo.
Las comillas triples se utilizan al escribir docstrings. Por ejemplo:
def duplicar(num):
Función para duplicar el valor
retornar 2*num
Los docstrings aparecen justo después de la definición de una función, clase o módulo.
Esto separa las cadenas de documentación de los comentarios multilínea utilizando comillas triples.
Las cadenas de documentación están asociadas con el objeto como su __doc__ atributo.
Así que, podemos acceder a las docstrings de la función anterior con las siguientes líneas.
de código:
def duplicar(num):
Función para duplicar el valor
devuelve 2*numprint(double.__doc__)
Salida
Función para duplicar el valor
Cap. 4
Funciones incorporadas de Python
Las funciones incorporadas de Python se definen como las funciones cuya funcionalidad está pre-
definido en Python. El intérprete de Python tiene varias funciones que siempre están
presente para su uso. Estas funciones se conocen como Funciones Incorporadas. Hay varias
funciones incorporadas en Python que se enumeran a continuación:
Función abs() de Python
La función pythonabs() se utiliza para devolver el valor absoluto de un número. Se
toma solo un argumento, un número cuyo valor absoluto debe ser devuelto. El
el argumento puede ser un número entero y un número de punto flotante. Si el argumento es un
número complejo, entonces, abs() devuelve su magnitud.
Ejemplo de la función abs() en Python
6.# número entero
[Link] = -20
[Link]('El valor absoluto de -40 es:', abs(entero))
9.
10.# número flotante
[Link] = -20.83
[Link]('El valor absoluto de -40.83 es:', abs(flotante))
Output:
El valor absoluto de -20 es: 20. El valor absoluto de -20.83 es: 20.83
Función all() de Python
La función pythonall() acepta un objeto iterable (como una lista, un diccionario, etc.).
Devuelve verdadero si todos los elementos en el iterable pasado son verdaderos. De lo contrario, devuelve falso. Si
el objeto iterable está vacío, la función all() devuelve True.
Ejemplo de la función all() de Python
13.# todos los valores son verdaderos
14.k = [1, 3, 4, 6]
[Link](todas(k))
16.
17.# todos los valores falsos
18.k = [0, False]
[Link](todo(k))
20.# un valor falso
21.k = [1, 3, 7, 0]
[Link](todos(k))
23.# un verdadero valor
24.k = [0, False, 5]
[Link](todos(k))
26.# iterable vacío
27.k = []
[Link](todas(k))
Salida:
VerdaderoFalsoFalsoFalsoVerdadero
Función bin() de Python
La función pythonbin() se utiliza para devolver la representación binaria de un especificado
entero. Un resultado siempre comienza con el prefijo 0b.
Ejemplo de la función bin() de Python
29.x = 10
30.y = bin(x)
[Link](y)
Output:
0b1010
Python bool()
El pythonbool() convierte un valor a booleano (True o False) utilizando el estándar
procedimiento de prueba de veracidad.
Ejemplo de Python bool()
32.test1 = []
[Link](test1,'es',bool(test1))
34.test1 = [0]
[Link](test1,'is',bool(test1))
36.test1 = 0.0
[Link](test1,'es',bool(test1))
38.test1 = None
[Link](test1, 'es', bool(test1))
40.test1 = True
[Link](test1,'es',bool(test1))
42.test1 ='Easy string'
[Link](test1, 'es', bool(test1))
Output:
[] es Falso[0] es Verdadero0.0 es FalsoNone es FalsoTrue es VerdaderoUna cadena sencilla es
Verdadero
bytes() de Python
El pythonbytes() en Python se utiliza para devolver un objeto de bytes. Es un
versión inmutable de la función bytearray()
Puede crear un objeto de bytes vacío del tamaño especificado.
Ejemplo de bytes() en Python
[Link] ="Hello World."
[Link] = bytes(string, 'utf-8')
[Link](array)
Output:
Hola Mundo.
Función callable() de Python
Una función pythoncallable() en Python es algo que se puede llamar. Este incorporado
la función verifica y devuelve verdadero si el objeto pasado parece ser invocable,
de lo contrario falso.
Ejemplo de la función callable() de Python
47.x = 8
[Link](callable(x))
Output:
Falso
Función compile() de Python
La función pythoncompile() toma código fuente como entrada y devuelve un código
objeto que luego puede ser ejecutado por la función exec()
Ejemplo de la función compile() de Python
49.# compilar cadena fuente a código
50.code_str ='x=5\ny=10\nprint("sum =",x+y)'
[Link] = compilar(código_str,'[Link]','ejecutar')
[Link](type(código))
[Link](código)
[Link](x)
Output:
suma = 15
Función exec() de Python
La función pythonexec() se utiliza para la ejecución dinámica de programas en Python
que puede ser una cadena o código de objeto y acepta grandes bloques de código,
a diferencia de la función eval() que solo acepta una sola expresión.
Ejemplo de la función exec() de Python
55.x = 8
[Link](x==8)
[Link](x+4)
Output:
Verdadero12
Función sum() de Python
Como su nombre indica, la función pythonsum() se utiliza para obtener la suma de los números de un
es iterable, es decir, lista.
Ejemplo de la función sum() de Python
58.s = suma([1, 2, 4])
[Link](s)
60.s = suma([1, 2, 4], 10)
[Link](s)
717
Función any() de Python
La función pythonany() devuelve verdadero si algún elemento en un iterable es verdadero. De lo contrario,
devuelve Falso.
Ejemplo de la función any() de Python
62.l = [4, 3, 2, 0]
[Link](cualquiera(l))
64.l = [0, False]
[Link](any(l))
66.l = [0, False, 5]
[Link](any(l))
68.l = []
[Link](cualquiera(l))
Output:
{"True":"Verdadero","False":"Falso"}
Función ascii() de Python
La función pythonascii() devuelve una cadena que contiene una representación imprimible de
un objeto y escapa los caracteres no ASCII en la cadena utilizando \x, \u o \U
escapes.
Ejemplo de la función ascii() de Python
[Link] ='Python is interesting'
[Link](ascii(textoNormal))
[Link] ='Pythön is interesting'
[Link](ascii(otroTexto))
[Link]('Pythön es interesante')
Output:
Python es interesante. Pythön es interesante. Pythön es interesante.
bytearray() de Python
El pythonbytearray() devuelve un objeto bytearray y puede convertir objetos en
objetos bytearray, o crear un objeto bytearray vacío del tamaño especificado.
Ejemplo de bytearray() en Python
[Link] ="Python is a programming language."
76.
77.# cadena con codificación 'utf-8'
[Link] = bytearray(cadena, 'utf-8')
[Link](arr)
Output:
Python es un lenguaje de programación.
Función eval() de Python
La función pythoneval() analiza la expresión que se le pasa y ejecuta python
expresión(código) dentro del programa.
Ejemplo de la función eval() de Python
80.x = 8
[Link](eval('x + 1'))
Output:
Python float()
La función pythonfloat() devuelve un número de punto flotante a partir de un número o
cadena.
Ejemplo de float() en Python
82.# para enteros
[Link](float(9))
84.# para flotantes
[Link](float(8.19))
86.# para flotantes de cadena
[Link](float("-24.27"))
88.# para flotantes de cadena con espacios en blanco
[Link](float( -17.19
90.# error de flotante de cadena
[Link](float("xyz"))
Output:
9.08.19-24.27-17.19ValueError: could not convert string to float: 'xyz'
Función format() de Python
La función format() de Python devuelve una representación formateada del dado
valor.
Ejemplo de la función format() de Python
92.# d, f y b son un tipo
93.# entero
[Link](formato(123, "d"))
95.# argumentos de punto flotante
[Link](format(123.4567898,"f"))
97.# formato binario
[Link](formato(12, "b"))
Output:
123123.4567901100
frozenset() de Python
La función pythonfrozenset() devuelve un objeto frozenset inmutable inicializado.
con elementos del iterable dado.
Ejemplo de frozenset() en Python
99.# tupla de letras
100. letters = ('m','r','o','t','s')
101. fSet = frozenset(letras)
102. print('El conjunto congelado es:', fSet)
103. print('Conjunto congelado vacío es:', frozenset())
Salida:
Frozen set is: frozenset({'o', 'm', 's', 'r', 't'})Empty frozen set is:
conjunto_inmutable()
Función getattr() de Python
La función pythongetattr() devuelve el valor de un atributo nombrado de un objeto.
Si no se encuentra, devuelve el valor predeterminado.
Ejemplo de la función getattr() de Python
104. classDetails:
105. age = 22
106. name ="Phill"
107. details = Details()
108. print('La edad es:', getattr(details,"edad"))
109. print('La edad es:', [Link])
Output:
La edad es: 22La edad es: 22
Función globals() de Python
La función pythonglobals() devuelve el diccionario del símbolo global actual.
mesa.
Una tabla de símbolos se define como una estructura de datos que contiene toda la información necesaria.
información sobre el programa. Incluye nombres de variables, métodos, clases, etc.
Ejemplo de la función globals() de Python
110. age = 22
111. globals()['age'] = 22
112. imprimir('La edad es:', edad)
Salida:
La edad es: 22
Función hasattr() de Python
La función pythonany() devuelve verdadero si algún elemento en un iterable es verdadero, de lo contrario
devuelve Falso.
Ejemplo de la función hasattr() de Python
113. l = [4, 3, 2, 0]
114. print(any(l))
115.
116. l = [0, Falso]
117. print(any(l))
118.
119. l = [0, Falso, 5]
120. print(any(l))
121.
122. l = []
123. print(any(l))
Output:
VerdaderoFalsoVerdaderoFalso
Función iter() de Python
La función pythoniter() se utiliza para devolver un objeto iterador. Crea un objeto
que se puede iterar un elemento a la vez.
Ejemplo de la función iter() de Python
124. lista de números
125. list = [1,2,3,4,5]
126.
127. listIter = iter(lista)
128.
129. # imprime '1'
130. imprimir(siguiente(listaIter))
131.
132. # imprime '2'
133. imprimir(siguiente(listIter))
134.
135. # imprime '3'
136. imprimir(siguiente(listIter))
137.
138. imprime '4'
139. imprimir(siguiente(listIter))
140.
141. # imprime '5'
142. print(next(listIter))
Output:
12345
Función len() de Python
La función pythonlen() se utiliza para devolver la longitud (el número de elementos) de un
objeto.
Ejemplo de la función len() de Python
143. strA ='Python'
144. print(len(strA))
Output:
lista() de Python
La función pythonlist() crea una lista en python.
Ejemplo de list() en Python
145. lista vacía
146. imprimir(lista())
147.
148. # string
149. String ='abcde'
150. imprimir(lista(Cadena))
151.
152. # tupla
153. Tuple = (1,2,3,4,5)
154. imprimir(lista(Tupla))
155. # lista
156. List = [1,2,3,4,5]
157. imprimir(lista(List))
Output:
[]['a', 'b', 'c', 'd', 'e'][1,2,3,4,5][1,2,3,4,5]
Función locals() de Python
El método locals() de Python actualiza y devuelve el diccionario del contexto local actual
tabla de símbolos.
Una tabla de símbolos se define como una estructura de datos que contiene todo lo necesario
información sobre el programa. Incluye nombres de variables, métodos, clases, etc.
Ejemplo de la función locals() de Python
158. deflocalsAusente():
159. returnlocals()
160.
161. deflocalsPresent():
162. present = True
163. returnlocals()
164.
165. imprimir('localsNotPresent:', localsAbsent())
166. imprimir('localsPresent:', localsPresent())
Output:
localsAbsent: {}localsPresent: {'present': True}
Función map() de Python
La función pythonmap() se utiliza para devolver una lista de resultados después de aplicar un dado
función a cada elemento de un iterable (lista, tupla, etc.).
Ejemplo de la función map() de Python
167. def calcularAdición(n):
168. returnn+n
169.
170. numbers = (1, 2, 3, 4)
171. result = map(calculateAddition, numbers)
172. imprimir(result)
173.
174. convertir objeto de mapa a conjunto
175. numbersAddition = set(result)
176. print(numbersAddition)
Output:
<map objeto en 0x7fb04a6bec18>{8, 2, 4, 6}
Función memoryview() de Python
La función pythonmemoryview() devuelve un objeto memoryview del dado
argumento.
Ejemplo de la función memoryview () de Python
177. #Un bytearray aleatorio
178. randomByteArray = bytearray('ABC','utf-8')
179.
180. mv = vista de memoria(randomByteArray)
181.
182. acceder al índice cero de la vista de memoria
183. imprimir(mv[0])
184.
185. Crea un byte a partir de la vista de memoria
186. imprimir(bytes(mv[0:2]))
187.
188. Crea una lista a partir de la vista de memoria
189. imprimir(lista(mv[0:3]))
Output:
65b'AB'[65, 66, 67]
objeto() de Python
El pythonobject() devuelve un objeto vacío. Es una base para todas las clases y
contiene las propiedades y métodos integrados que son predeterminados para todas las clases.
Ejemplo de objeto() en Python
190. python = objeto()
191.
192. print(type(python))
193. imprimir(dir(python))
Output:
<clase 'objeto'>['__clase__', '__delattr__', '__dir__', '__doc__', '__eq__',
'__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__',
'__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__',
'__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
Función open() de Python
La función pythonopen() abre el archivo y devuelve un objeto de archivo correspondiente.
Ejemplo de la función open() de Python
194. # abre el archivo de texto python del directorio actual
195. f = open("[Link]")
196. especificando la ruta completa
197. f = open("C:/Python33/[Link]")
Output:
Dado que se omite el modo, el archivo se abre en modo 'r'; se abre para leer.
Función chr() de Python
La función Python chr() se utiliza para obtener una cadena que representa un carácter que apunta
a un entero de código Unicode. Por ejemplo, chr(97) devuelve la cadena 'a'. Esta función
toma un argumento entero y lanza un error si excede el rango especificado.
El rango estándar del argumento es de 0 a 1,114,111.
Ejemplo de la función chr() de Python
198. # Llamando a la función
199. result = chr(102)# It returns string representation of a char
200. result2 = chr(112)
201. # Mostrando resultado
202. imprimir(resultado)
203. imprimir(result2)
204. Verificar, ¿es del tipo cadena?
205. print("¿es del tipo cadena?:", type(result) is str)
Output:
ValueError: chr() arg not in range(0x110000)
Python complejo()
La función complex() de Python se utiliza para convertir números o cadenas en un número complejo.
número. Este método toma dos parámetros opcionales y devuelve un complejo
número. El primer parámetro se llama parte real y el segundo parte imaginaria.
Ejemplo de complejo() de Python
206. # Ejemplo de la función complex() de Python
207. # Llamando a la función
208. a = complejo(1)# Pasando un solo parámetro
209. b = complejo(1,2)# Pasando ambos parámetros
210. # Mostrando resultado
211. imprimir(a)
212. imprimir(b)
Output:
(1.5+0j)(1.5+2.2j)
Función delattr() de Python
La función delattr() de Python se utiliza para eliminar un atributo de una clase. Toma dos
parámetros, el primero es un objeto de la clase y el segundo es un atributo que queremos
para eliminar. Después de eliminar el atributo, ya no está disponible en la clase y lanza
un error si intentas llamarlo usando el objeto de la clase.
Ejemplo de la función delattr() de Python
213. classStudent:
214. id = 101
215. name ="Pranshu"
216. email ="pranshu@[Link]"
217. # Declarando función
218. defgetinfo(self):
219. imprimir([Link], [Link], [Link])
220. s = Estudiante()
221. [Link]()
222. delattr(Estudiante, 'curso')# Eliminando atributo que no está disponible
223. [Link]()# error: lanza un error
Salida:
101 Pranshupranshu@[Link]: course
Función dir() de Python
La función pythondir() devuelve la lista de nombres en el ámbito local actual. Si el
el objeto sobre el que se llama al método tiene un método llamado __dir__(), este método hará
ser llamado y debe devolver la lista de atributos. Toma un solo tipo de objeto
argumento.
Ejemplo de la función dir() de Python
224. # Llamando a la función
225. att = dir()
226. # Mostrando resultado
227. imprimir(att)
Output:
["__anotaciones__","__integrados__","__almacenado__","__doc__","__archivo__"]
'__loader__', '__name__', '__package__', '__spec__']
Función divmod() de Python
La función divmod() de Python se utiliza para obtener el residuo y el cociente de dos números.
Esta función toma dos argumentos numéricos y devuelve una tupla. Ambos argumentos
son requeridos y numéricos
Ejemplo de la función divmod() de Python
228. # Ejemplo de la función divmod() en Python
229. # Llamando función
230. result = divmod(10,2)
231. # Mostrando resultado
232. imprimir(resultado)
Output:
(5, 0)
Función enumerate() de Python
La función enumerate() de Python devuelve un objeto enumerado. Toma dos
parámetros, el primero es una secuencia de elementos y el segundo es el índice de inicio del
secuencia. Podemos obtener los elementos en secuencia ya sea a través de un bucle o usando next()
método.
Ejemplo de la función enumerate() de Python
233. # Llamando a la función
234. result = enumerate([1,2,3])
235. # Mostrando resultado
236. imprimir(resultado)
237. printar(lista(result))
Output:
[[0,1],[1,2],[2,3]]
Python dict()
La función Pythondict() es un constructor que crea un diccionario. Diccionario de Python
proporciona tres constructores diferentes para crear un diccionario:
Si no se pasa ningún argumento, crea un diccionario vacío.
Si se proporciona un argumento posicional, se crea un diccionario con la misma clave-
pares de valores. De lo contrario, pase un objeto iterable.
Si se proporcionan argumentos de palabras clave, los argumentos de palabras clave y sus valores
se añaden al diccionario creado a partir del argumento posicional.
Python dict() Example
238. # Llamando función
239. result = dict()# returns an empty dictionary
240. result2 = dict(a=1,b=2)
241. Mostrando resultado
242. imprimir(resultado)
243. imprimir(result2)
Output:
{}{'a': 1, 'b': 2}
Función filter() de Python
La función filter() de Python se utiliza para obtener elementos filtrados. Esta función toma dos
argumentos, el primero es una función y el segundo es iterable. La función de filtro devuelve un
secuencia de aquellos elementos del objeto iterable para los cuales la función devuelve verdadero
valor.
El primer argumento puede ser nulo, si la función no está disponible y solo devuelve
elementos que son verdaderos.
Ejemplo de la función filter() de Python
244. # Ejemplo de la función filter() de Python
245. deffilterdata(x):
246. si x > 5:
247. devuelvex
248. # Llamando función
249. result = filter(filterdata,(1,2,6))
250. # Mostrando resultado
251. imprimir(lista(resultado))
Output:
[6]
Función hash() de Python
La función hash() de Python se utiliza para obtener el valor hash de un objeto. Python
calcula el valor hash utilizando el algoritmo hash. Los valores hash son enteros
y se utilizó para comparar las claves del diccionario durante una búsqueda en el diccionario. Solo podemos hashear
los tipos que se indican a continuación:
Hashable types:* bool * int * long * float * string * Unicode * tuple * code
objeto.
Ejemplo de la función hash() de Python
252. Llamando a la función
253. result = hash(21)# integer value
254. result2 = hash(22.2)# decimal value
255. # Displaying result
256. imprimir(resultado)
257. imprimir(result2)
Output:
21461168601842737174
Función help() de Python
La función help() de Python se utiliza para obtener ayuda relacionada con el objeto pasado durante la
llamar. Toma un parámetro opcional y devuelve información de ayuda. Si no hay argumento
dado, muestra la consola de ayuda de Python. Internamente llama a la función de ayuda de Python.
Ejemplo de la función help() de Python
258. # Llamando a la función
259. info = ayuda()# Sin argumento
260. # Mostrando resultado
261. imprimir(info)
Output:
¡Bienvenido a la utilidad de ayuda de Python 3.5!
Función min() de Python
La función Python min() se utiliza para obtener el elemento más pequeño de la colección. Esto
la función toma dos argumentos, el primero es una colección de elementos y el segundo es una clave,
y devuelve el elemento más pequeño de la colección.
Ejemplo de la función min() de Python
262. # Llamando a la función
263. small = min(2225,325,2025)# returns smallest element
264. small2 = min(1000.25,2025.35,5625.36,10052.50)
265. # Mostrando resultado
266. imprimir(pequeño)
267. imprimir(small2)
Output:
3251000.25
Función set() de Python
En python, un conjunto es una clase incorporada, y esta función es un constructor de esta clase.
se utiliza para crear un nuevo conjunto utilizando elementos pasados durante la llamada. Toma un
objeto iterable como argumento y devuelve un nuevo objeto conjunto.
Ejemplo de la función set() de Python
268. # Llamando función
269. result = set()# empty set
270. result2 = conjunto('12')
271. result3 = set('javatpoint')
272. # Mostrando resultado
273. imprimir(resultado)
274. imprimir(result2)
275. imprimir(result3)
Output:
set(){'1', '2'}{'a', 'n', 'v', 't', 'j', 'p', 'i', 'o'}
Función hex() de Python
La función Python hex() se utiliza para generar el valor hexadecimal de un argumento entero.
toma un argumento entero y devuelve un entero convertido en hexadecimal
cadena. En caso de que queramos obtener un valor hexadecimal de un flotante, entonces usa [Link]()
función.
Ejemplo de la función hex() de Python
276. # Llamando a la función
277. result = hex(1)
278. # valor entero
279. result2 = hex(342)
280. # Mostrando resultado
281. imprimir(resultado)
282. imprimir(result2)
Output:
0x10x156
Función id() de Python
La función Pythonid() devuelve la identidad de un objeto. Este es un número entero que es
garantizado para ser único. Esta función toma un argumento como un objeto y devuelve
un número entero único que representa la identidad. Dos objetos con no-
los tiempos de vida superpuestos pueden tener el mismo valor id().
Ejemplo de la función id() de Python
283. # Llamando función
284. val = id("Javatpoint")# string object
285. val2 = id(1200)# integer object
286. val3 = id([25,336,95,236,92,3225])# Objeto de lista
287. # Mostrando resultado
288. imprimir(val)
289. imprimir(val2)
290. imprimir(val3)
Output:
139963782059696139963805666864139963781994504
Función setattr() de Python
La función setattr() de Python se utiliza para establecer un valor en el atributo del objeto. Toma
tres argumentos, es decir, un objeto, una cadena y un valor arbitrario, y no devuelve ninguno.
Es útil cuando queremos agregar un nuevo atributo a un objeto y establecer un valor para él.
Ejemplo de la función setattr() de Python
291. classStudent:
292. id = 0
293. name = ""
294.
295. def __init__(self, id, nombre):
296. [Link] = id
297. [Link] = name
298.
299. student = Student(102,"Sohan")
300. imprimir([Link])
301. imprimir([Link])
302. #print([Link]) error de producto
303. setattr(estudiante,'email','sohan@[Link])# añadiendo nuevo atributo
304. imprimir([Link])
Output:
102Sohansohan@[Link]
Función slice() de Python
La función slice() de Python se utiliza para obtener un fragmento de elementos de la colección de
elementos. Python proporciona dos funciones de corte sobrecargadas. La primera función toma un
un solo argumento mientras que la segunda función toma tres argumentos y devuelve un
objeto slice. Este objeto slice se puede utilizar para obtener una subsección de la colección.
Ejemplo de la función slice() de Python
305. Llamando a la función
306. result = slice(5)# returns slice object
307. result2 = slice(0,5,3)# returns slice object
308. # Mostrando resultado
309. imprimir(resultado)
310. imprimir(result2)
Salida:
rebanar(None, 5, None)rebanar(0, 5, 3)
Función sorted() de Python
La función sorted() de Python se usa para ordenar elementos. Por defecto, ordena los elementos en
un orden ascendente pero también se puede ordenar en descenso. Toma cuatro argumentos
y devuelve una colección en orden ordenado. En el caso de un diccionario, solo ordena
claves, no valores.
Ejemplo de la función sorted() de Python
311. str ="javatpoint"# declarando cadena
312. # Llamando a la función
313. sorted1 = sorted(str)# ordenando cadena
314. # Mostrando resultado
315. imprimir(sorted1)
Salida:
["a","a","i","j","n","o","p","t","t","v"]
Función next() de Python
La función next() de Python se utiliza para obtener el siguiente elemento de la colección. Toma dos
argumentos, es decir, un iterador y un valor predeterminado, y devuelve un elemento.
Este método llama al iterador y lanza un error si no hay ningún elemento presente. Para evitar el
error, podemos establecer un valor predeterminado.
Ejemplo de la función next() de Python
316. número = iter([256, 32, 82])# Creando iterador
317. # Llamando a la función
318. item = siguiente(número)
319. Mostrando resultado
320. imprimir(elemento)
321. segundo artículo
322. item = next(número)
323. imprimir(item)
324. tercer artículo
325. elemento = siguiente(número)
326. imprimir(elemento)
Salida:
2563282
Función input() de Python
La función input() de Python se utiliza para obtener una entrada del usuario. Solicita al usuario que introduzca.
el usuario ingresa y lee una línea. Después de leer los datos, los convierte en una cadena y
lo devuelve. Lanza un error EOFError si se lee EOF.
Ejemplo de la función input() de Python
327. Llamando a la función
328. val = input("Enter a value: ")
329. # Mostrando resultado
330. print("Ingresaste:", val)
Output:
Enter a value: 45You entered: 45
Función int() de Python
La función Python int() se utiliza para obtener un valor entero. Devuelve una expresión
convertido en un número entero. Si el argumento es un punto flotante, el
la conversión trunca el número. Si el argumento está fuera del rango entero,
then it converts the number into a long type.
Si el número no es un número o si se proporciona una base, el número debe ser una cadena.
Ejemplo de la función int() de Python
331. # Llamando a la función
332. val = int(10)# integer value
333. val2 = int(10.52)# valor flotante
334. val3 = int('10')# string value
335. Mostrando resultado
336. imprimir("valores enteros :", val, val2, val3)
Output:
integer values : 10 10 10
Función isinstance() de Python
La función isinstance() de Python se utiliza para verificar si el objeto dado es un
instancia de esa clase. Si el objeto pertenece a la clase, devuelve verdadero. De lo contrario
devuelve Falso. También devuelve verdadero si la clase es una subclase.
La función isinstance() toma dos argumentos, es decir, objeto y classinfo, y luego
devuelve True o False.
Ejemplo de la función isinstance() de Python
337. classStudent:
338. id = 101
339. name ="John"
340. def __init__(self, id, nombre):
341. [Link]=id
342. [Link]=name
343.
344. student = Student(1010,"John")
345. lst = [12, 34, 5, 6, 767]
346. # Llamando a la función
347. print(isinstance(student, Student))# isinstance de la clase Student
348. print(isinstance(lst, Estudiante))
Output:
VerdaderoFalso
Función oct() de Python
La función Pythonoct() se usa para obtener un valor octal de un número entero.
el método toma un argumento y devuelve un entero convertido en una cadena octal.
lanza un error TypeError, si el tipo de argumento es diferente a un entero.
Python oct() function Example
349. # Llamando función
350. val = oct(10)
351. # Mostrando resultado
352. imprimir("Valor octal de 10:", val)
Output:
Valor octal de 10: 0o12
Función ord() de Python
La función pythonord() devuelve un entero que representa el punto de código Unicode para
el carácter Unicode dado.
Ejemplo de la función ord() de Python
353. # Code point of an integer
354. print(ord('8'))
355.
356. Código de punto de un alfabeto
357. print(ord('R'))
358.
359. Punto de código de un carácter
360. print(ord('&'))
Output:
568238
Función pow() de Python
La función pythonpow() se utiliza para calcular la potencia de un número. Devuelve x
a la potencia de y. Si se proporciona el tercer argumento (z), devuelve x a la potencia de y
módulo z, es decir, (x, y) % z.
Ejemplo de la función pow() de Python
361. x positivo, y positivo (x**y)
362. print(pow(4, 2))
363.
364. # negativo x, positivo y
365. imprimir(pow(-4, 2))
366.
367. # x positivo, y negativo (x**-y)
368. print(pow(4, -2))
369.
370. # negativo x, negativo y
371. print(pow(-4, -2))
Output:
16160.06250.0625
Función print() de Python
La función pythonprint() imprime el objeto dado en la pantalla u otro estándar
dispositivos de salida.
Ejemplo de la función print() de Python
372. print("Python es un lenguaje de programación.")
373.
374. x=7
375. Dos objetos pasados
376. imprimir("x =", x)
377.
378. y=x
379. Tres objetos pasaron
380. print('x =', x,'= y')
Salida:
Python es un lenguaje de programación.x = 7x = 7 = y
Función range() de Python
La función pythonrange() devuelve una secuencia inmutable de números que comienza
desde 0 por defecto, se incrementa en 1 (por defecto) y termina en un número especificado.
Ejemplo de la función range() en Python
381. # rango vacío
382. imprimir(lista(rango(0)))
383.
384. # usando el rango(parar)
385. imprimir(lista(rango(4)))
386.
387. # usando el rango(inicio, fin)
388. imprimir(list(range(1,7 )))
Output:
[][0, 1, 2, 3][1, 2, 3, 4, 5, 6]
Función reversed() de Python
La función pythonreversed() devuelve el iterador invertido del dado
secuencia.
Ejemplo de la función reversed() de Python
389. # para cadena
390. String ='Java'
391. print(list(reversed(Cadena)))
392.
393. # para tupla
394. Tupla = ('J','a','v','a')
395. print(list(reversed(Tupla)))
396.
397. # para rango
398. Rango = rango(8, 12)
399. imprimir(list(reversed(Rango)))
400.
401. para lista
402. List = [1, 2, 7, 5]
403. imprimir(lista(reversa(Lista)))
Output:
[["a","v","a","J"],["a","v","a","J"],[11,10,9,8],[5,7,2,1]]
Función round() de Python
La función pythonround() redondea los dígitos de un número y devuelve el
número de punto flotante.
Ejemplo de la función round() de Python
404. # para enteros
405. imprimir(round(10))
406.
407. # para punto flotante
408. imprimir(round(10.8))
409.
410. elección par
411. imprimir(round(6.6))
Output:
10117
Función issubclass() de Python
La función pythonissubclass() devuelve verdadero si el argumento objeto (primer argumento) es
una subclase de segunda clase (segundo argumento).
Python issubclass() Function Example
412. claseRectángulo:
413. def __init__(tipoRectángulo):
414. imprimir('El rectángulo es un ', tipoRectángulo)
415.
416. classCuadrado(Rectángulo):
417. def __init__(self):
418. Rectángulo.__init__('cuadrado')
419.
420. print(issubclass(Cuadrado, Rectángulo))
421. print(issubclass(Cuadrado, lista))
422. print(issubclass(Cuadrado, (lista, Rectángulo))
423. print(issubclass(Rectangle, (list, Rectangle)))
Output:
VerdaderoFalsoVerdaderoVerdadero
str de Python
La función pythonstr() convierte un valor especificado en una cadena.
Ejemplo de la función str() de Python
424. str('4')
Output:
Función tuple() de Python
La función pythontuple() se utiliza para crear un objeto tupla.
Ejemplo de la función tuple() de Python
425. t1 = tuple()
426. print('t1=', t1)
427.
428. creando una tupla a partir de una lista
429. t2 = tupla([1, 6, 9])
430. print('t2=', t2)
431.
432. creando una tupla a partir de una cadena
433. t1 = tuple('Java')
434. imprimir('t1=',t1)
435.
436. creando una tupla a partir de un diccionario
437. t1 = tupla({4:'cuatro', 5:'cinco'})
438. print('t1=',t1)
Output:
t1= ()t2= (1, 6, 9)t1= ('J', 'a', 'v', 'a')t1= (4, 5)
Python tipo()
El pythontype() devuelve el tipo del objeto especificado si hay un solo argumento.
se pasa a la función incorporada type(). Si se pasan tres argumentos, entonces devuelve
un nuevo tipo de objeto.
Ejemplo de la función type() de Python
439. List = [4, 5]
440. imprimir(tipo(List))
441.
442. Dict = {4:'four', 5:'five'}
443. imprimir(tipo(Dict))
444.
445. clasePython:
446. a=0
447.
448. InstanceOfPython = Python()
449. print(type(InstanceOfPython))
Output:
<clase 'lista'><clase 'diccionario'><clase '__main__.Python'>
Función vars() de Python
La función pythonvars() devuelve el atributo __dict__ del objeto dado.
Ejemplo de la función vars() de Python
450. classPython:
451. def __init__(self, x = 7, y = 9):
452. self.x = x
453. self.y = y
454.
455. InstanceOfPython = Python()
456. imprimir(vars(InstanciaDePython))
Output:
{'y': 9, 'x': 7}
Función zip() de Python
La función pythonzip() devuelve un objeto zip, que mapea un índice similar de
múltiples contenedores. Toma iterables (puede ser cero o más), lo convierte en un iterador
que agrega los elementos basados en iterables pasados y devuelve un iterador de
tuplas.
Ejemplo de la función zip() de Python
457. numList = [4,5, 6]
458. strList = ['four','five','six']
459.
460. No se pasan iterables
461. result = zip()
462.
463. # Convirtiendo el iterador a lista
464. resultList = list(result)
465. imprimir(resultList)
466.
467. Se pasan dos iterables
468. result = zip(numList, strList)
469.
470. Convertir iterador a conjunto
471. resultSet = set(result)
472. imprimir(resultSet)
Output:
[]{(5, 'five'), (4, 'four'), (6, 'six')}
Cap. 5
Estructura de bucle y control
Instrucciones If-else de Python
La toma de decisiones es el aspecto más importante de casi toda la programación.
languages. As the name implies, decision making allows us to run a particular block
de código para una decisión particular. Aquí, las decisiones se toman sobre la validez de la
condiciones particulares. La verificación de condiciones es la columna vertebral de la toma de decisiones.
En Python, la toma de decisiones se realiza mediante las siguientes declaraciones.
Declaración Descripción
Declaración If La declaración if se utiliza para probar un
condición específica. Si la condición es
verdadero, un bloque de código (bloque if) será
ejecutado.
Instrucción if - else La declaración if-else es similar a if.
declaración excepto el hecho de que, también
proporciona el bloque de código para el
falsa condición del caso para ser
verificado. Si la condición proporcionada en
si la declaración if es falsa, entonces el else
la declaración se ejecutará.
Declaración if anidada Las sentencias if anidadas nos permiten usar if
? declaración else dentro de un if externo
declaración.
Sangrado en Python
Para facilitar la programación y lograr simplicidad, Python no permite el
uso de paréntesis para el código a nivel de bloque. En Python, se utiliza la indentación para
declara un bloque. Si dos declaraciones están al mismo nivel de indentación, entonces son
la parte del mismo bloque.
Generalmente, se dan cuatro espacios para sangrar las declaraciones que son típicas
cantidad de sangrado en python.
La indentación es la parte más utilizada del lenguaje python ya que declara el bloque
de código. Todas las instrucciones de un bloque están indentadas al mismo nivel.
Veremos cómo tiene lugar la indentación real en la toma de decisiones y otros
cosas en python.
La declaración if
La declaración if se utiliza para probar una condición particular y si la condición es verdadera, se
ejecuta un bloque de código conocido como bloque if. La condición de la declaración if puede ser
cualquier expresión lógica válida que se puede evaluar como verdadera o falsa.
La sintaxis de la declaración if se presenta a continuación.
473. ifexpression:
474. declaración
Ejemplo 1
475. num = int(input("¿ingresa el número?"))
476. ifnum%2 == 0:
477. print("El número es par")
Output:
enter the number?10Number is even
Ejemplo 2: Programa para imprimir el mayor de los tres
números.
478. a = int(input("¿Ingresar a? "));
479. b = int(input("¿Ingresa b? "));
480. c = int(input("¿Introduce c? "));
481. ifa>banda>c:
482. imprimir("a es el más grande");
483. si b>a y b>c:
484. imprimir("b es el más grande");
485. ifc>aandc>b:
486. print("c es el más grande");
Salida:
Enter a? 100Enter b? 120Enter c? 130c is largest
La declaración if-else
La declaración if-else proporciona un bloque else combinado con la declaración if que
se ejecuta en el caso falso de la condición.
Si la condición es verdadera, entonces se ejecuta el bloque if. De lo contrario, se ejecuta el bloque else.
ejecutado.
La sintaxis de la declaración if-else se muestra a continuación.
487. ifcondition: yy
488. #bloque de declaraciones
489. sino:
490. #otro bloque de declaraciones (bloque else)
Ejemplo 1: Programa para comprobar si una persona es
elegible para votar o no.
491. edad = int (input("¿Cuál es tu edad? "))
492. si edad >= 18:
493. ¡Eres elegible para votar!!
494. sino:
495. ¡Lo siento! ¡tienes que esperar!!
Salida:
¿Cuál es tu edad? 90 ¡¡Eres elegible para votar!!
Ejemplo 2: Programa para verificar si un número es
par o impar.
496. num = int(input("introduzca el número?"))
497. si num % 2 == 0:
498. print("El número es par...")
499. else:
500. print("El número es impar...")
Output:
¿Ingrese el número? 10 El número es par
La declaración elif
La declaración elif nos permite comprobar múltiples condiciones y ejecutar la específica
bloque de declaraciones dependiendo de la condición verdadera entre ellas. Podemos tener
cualquier número de declaraciones elif en nuestro programa dependiendo de nuestra necesidad. Sin embargo,
usar elif es opcional.
La declaración elif funciona como una declaración de escalera if-else-if en C. Debe ser
sucedido por una declaración if.
La sintaxis de la declaración elif se da a continuación.
501. expresión si 1:
502. # block of statements
503.
504. elifexpresión 2:
505. # bloque de declaraciones
506.
507. elifexpresión 3:
508. # bloque de declaraciones
509.
510. más:
511. # bloque de declaraciones
Ejemplo 1
512. number = int(input("Enter the number?"))
513. si número == 10:
514. el número es igual a 10
515. elifnumber==50:
516. imprimir("el número es igual a 50");
517. elifnumber==100:
518. print("el número es igual a 100");
519. sino:
520. print("el número no es igual a 10, 50 o 100");
Output:
¿Introduce el número?15 el número no es igual a 10, 50 o 100
Ejemplo 2
521. marks = int(input("Enter the marks? "))
522. f marcas > 85 y marcas <= 100:
523. ¡Felicidades! Has obtenido la calificación A...
524. marcas de vida > 60 y marcas <= 85:
525. Obtuviste una calificación de B + ...
526. marcas de vida > 40 y marcas <= 60:
527. Has obtenido una calificación de B ...
528. si (marcas > 30 y marcas <= 40):
529. Has obtenido una calificación C ...
530. lse:
531. Lo siento, has fallado ?
Cap.6
Bucles en Python
El flujo de los programas escritos en cualquier lenguaje de programación es secuencial por
predeterminado. A veces puede que necesitemos alterar el flujo del programa. La ejecución de
un código específico puede necesitar ser repetido varias veces.
Para este propósito, los lenguajes de programación proporcionan varios tipos de bucles que
son capaces de repetir un código específico varias veces. Considera el
siguiente diagrama para entender el funcionamiento de una declaración de bucle.
¿Por qué usamos bucles en python?
El bucle simplifica los problemas complejos en los sencillos. Nos permite
alterar el flujo del programa para que en lugar de escribir el mismo código nuevamente y
nuevamente, podemos repetir el mismo código un número finito de veces. Por ejemplo, si nosotros
necesito imprimir los primeros 10 números naturales, luego, en lugar de usar la declaración de impresión
10 veces, podemos imprimir dentro de un bucle que se ejecuta hasta 10 iteraciones.
Ventajas de los bucles
Existen las siguientes ventajas de los bucles en Python
Proporciona reutilización de código.
Usando bucles, no necesitamos escribir el mismo código una y otra vez
Utilizando bucles, podemos recorrer los elementos de las estructuras de datos (arreglo o
listas enlazadas).
Existen las siguientes declaraciones de bucle en Python.
Instrucción de bucle Description
bucle for El bucle for se utiliza en el caso en que
necesitamos ejecutar alguna parte del
código hasta que se cumpla la condición dada
satisfecho. El bucle for también se llama como un
bucle de prueba previa. Es mejor usar para
bucle si se conoce el número de iteraciones
por adelantado.
bucle mientras El bucle while se debe usar en el
escenario donde no sabemos el
número de iteraciones por adelantado. El
el bloque de declaraciones se ejecuta en el
bucle mientras hasta que se cumpla la condición especificada
en el bucle while se cumple. También es
llamado un bucle pre-probado.
bucle do-while El bucle do-while continúa hasta que un
la condición dada se satisface. También es
llamada bucle probado al final. Se utiliza cuando
es necesario ejecutar el bucle en
al menos una vez (principalmente dirigido por el menú)
programas).
Bucle for en Python
El bucle for en Python se utiliza para iterar sobre las instrucciones o una parte del programa.
varias veces. Se utiliza frecuentemente para recorrer las estructuras de datos como listas, tuplas, o
diccionario.
La sintaxis del bucle for en python se da a continuación.
1.foriterating_varinsequence:
2. declaración(es)
El diagrama de flujo del bucle for
Bucle for usando secuencia
Ejemplo-1: Iterando cadena usando bucle for
[Link] ="Python"
[Link]:
5. imprimir(i)
Output:
Python
Ejemplo- 2: Programa para imprimir la tabla del número dado.
[Link] = [1,2,3,4,5,6,7,8,9,10]
7.n = 5
[Link]:
9. c = n*i
10. imprimir(c)
Output:
5101520253035404550s
Ejemplo-4: Programa para imprimir la suma de la lista dada.
[Link] = [10,30,23,43,65,12]
[Link] = 0
13. paraiinlist:
14. suma = suma+i
[Link]("La suma es:", suma)
Output:
La suma es: 183
Bucle for utilizando la función range()
La función range()
La función range() se utiliza para generar la secuencia de números. Si pasamos
el range(10), generará los números del 0 al 9. La sintaxis de range()
la función se da a continuación.
Sintaxis:
[Link](inicio,fin,tamaño de paso)
El inicio representa el comienzo de la iteración.
La parada representa que el bucle se iterará hasta stop-1. Therange(1,5)will
genera números del 1 al 4 iteraciones. Es opcional.
El tamaño del paso se utiliza para omitir los números específicos de la iteración. Es
opcional de usar. Por defecto, el tamaño del paso es 1. Es opcional.
Considere los siguientes ejemplos:
Ejemplo-1: Programa para imprimir números en secuencia.
17. paraiinrange(10):
18. print(i,end =' ')
Output:
0123456789
Ejemplo - 2: Programa para imprimir la tabla del número dado.
19.n = int(input(Introduce el número
20. paraiinrange(1,11):
21. c = n*i
22. imprimir(n, "*", i, "=", c)
Output:
Ingresa el número 1010 * 1 = 1010 * 2 = 2010 * 3 = 3010 * 4 = 4010 * 5 = 5010
* 6 = 6010 * 7 = 7010 * 8 = 8010 * 9 = 9010 * 10 = 100
Example-3: Program to print even number using step size in range().
23.n = int(input(Ingrese el número
24. poriinrange(2,n,2):
25. imprimir(i)
Output:
Ingrese el número 2024681012141618
También podemos usar la función range() con una secuencia de números. La función len()
la función se combina con la función range() que itera a través de una secuencia usando
indexación. Considera el siguiente ejemplo.
[Link] = ['Peter','Joseph','Ricky','Devansh']
[Link](len(lista)):
28. print("Hola", list[i])
Output:
["Hola Peter","Hola Joseph","Hola Ricky","Hola Devansh"]
Bucle for anidado en python
Python nos permite anidar cualquier número de bucles for dentro de un bucle for. El bucle interno es
ejecutado n veces para cada iteración del bucle exterior. La sintaxis es
dado a continuación.
Sintaxis
29. poriterando_var1ensecuncia:#bucle exterior
30. foriterando_var2ensecuncia:#bucle interno
31. #bloque de declaraciones
32.#Other statements
Ejemplo- 1: Bucle for anidado
33.# Entrada del usuario para el número de filas
[Link] = int(input("Enter the rows:"))
35.# El bucle externo imprimirá el número de filas
[Link](0,filas+1):
37.# El bucle interno imprimirá el número de asteriscos
38. forjinrange(i):
39. imprimir("*", final='')
40. imprimir()
Output:
Ingresa las filas:5***************
Ejemplo-2: Programa para pirámide de números.
[Link] = int(input("Ingresa las filas"))
[Link](0, filas + 1):
43. forjinrange(i):
44. print(i, end='')
45. imprimir()
Output:
122333444455555
Usando la declaración else con el bucle for
A diferencia de otros lenguajes como C, C++ o Java, Python nos permite usar el else
statement with the for loop which can be executed only when all the iterations are
agotado. Aquí, debemos notar que si el bucle contiene alguno de los break
si se cumple la declaración, entonces la declaración else no se ejecutará.
Ejemplo 1
[Link](0,5):
47. imprimir(i)
[Link]:
49. print("el bucle for se ha agotado por completo, ya que no hay ruptura.")
Salida:
El bucle for se ha agotado por completo, ya que no hay un break.
El bucle for se agotó por completo, ya que no hay ninguna ruptura.
Ejemplo 2
[Link](0,5):
51. imprimir(i)
52. romper;
[Link]:print("el bucle for ha terminado");
[Link]("El bucle se ha roto debido a la declaración break...salió del bucle")
En el ejemplo anterior, el bucle se interrumpe debido a la declaración break; por lo tanto,
la declaración else no se ejecutará. La declaración presente justo después de
se ejecutará el bloque else.
Output:
0
El bucle se interrumpe debido a la declaración de ruptura...salimos del bucle. Aprenderemos
más sobre la instrucción break en el siguiente tutorial.
Cap. 7
Función de Python
Una función es un bloque de código organizado y reutilizable que se utiliza para realizar una única,
acción relacionada. Las funciones proporcionan una mejor modularidad para su aplicación y un alto
grado de reutilización de código.
Como ya sabes, Python te ofrece muchas funciones integradas como print(), etc. pero tú
también puedes crear tus propias funciones. Estas funciones se llaman funciones definidas por el usuario.
Definiendo una función
Puedes definir funciones para proporcionar la funcionalidad requerida. Aquí hay reglas simples para
define una función en Python.
Los bloques de función comienzan con la palabra clave def seguida del nombre de la función y
paréntesis ( ( ) ).
Cualquier parámetro de entrada o argumento debe colocarse dentro de estos paréntesis.
También puedes definir parámetros dentro de estos paréntesis.
La primera declaración de una función puede ser una declaración opcional - el
cadena de documentación de la función ordocstring.
El bloque de código dentro de cada función comienza con dos puntos (:) y está indentado.
La declaración return [expresión] sale de una función, pasando opcionalmente un
expresión para el llamador. Una instrucción de retorno sin argumentos es lo mismo que
no devolver nada.
Sintaxis
def nombreFuncion( parametros ):
"function_docstring"
conjunto_de_funciones
retornar [expresión]
Por defecto, los parámetros tienen un comportamiento posicional y necesitas informarlos en el
mismo orden en que fueron definidos.
Ejemplo
La siguiente función toma una cadena como parámetro de entrada y la imprime en la salida estándar.
pantalla.
def imprimir( str):
Esto imprime una cadena pasada a esta función
imprimir cadena
volver
Llamando a una función
Definir una función solo le da un nombre, especifica los parámetros que deben ser
incluidos en la función y estructuras los bloques de código.
Una vez que la estructura básica de una función está finalizada, puedes ejecutarla llamándola desde
otra función o directamente desde el indicador de Python. A continuación se muestra el ejemplo para llamar
función printme() −
# La definición de la función está aquí
def imprimir ( cadena):
Esto imprime una cadena pasada a esta función
imprimir str
volver;
Ahora puedes llamar a la función printme
¡Soy la primera llamada a la función definida por el usuario!
printme("Again second call to the same function")
Cuando se ejecuta el código anterior, produce el siguiente resultado −
¡Soy la primera llamada a la función definida por el usuario!
Nuevamente segunda llamada a la misma función
Pasar por referencia vs valor
Todos los parámetros (argumentos) en el lenguaje Python se pasan por referencia. Esto significa
si cambias a qué se refiere un parámetro dentro de una función, el cambio también se refleja
de vuelta en la función de llamada. Por ejemplo −
#La definición de la función está aquí
def cambiamelo( miLista):
Esto convierte una lista pasada en esta función
[Link]([1,2,3,4]);
imprimir Valores dentro de la función:
devuelve
Ahora puedes llamar a la función cambiamelo
mylist= [10,20,30];
cambiame( mi_lista);
imprimir Valores fuera de la función:
Aquí, estamos manteniendo la referencia del objeto pasado y agregando valores en el
el mismo objeto. Así que, esto produciría el siguiente resultado −
Values inside the function: [10, 20, 30, [1, 2, 3, 4]]
Valores fuera de la función: [10, 20, 30, [1, 2, 3, 4]]
Hay un ejemplo más donde el argumento se pasa por referencia y el
la referencia se está sobrescribiendo dentro de la función llamada.
# La definición de la función está aquí
def cambiame( miLista):
Esto convierte una lista pasada en esta función
mylist = [1,2,3,4] Esto asignaría una nueva referencia en mylist
imprimir Valores dentro de la función: , mi lista
regresar
Ahora puedes llamar a la función changeme
mylist= [10,20,30];
cambiame( miLista);
imprimir Valores fuera de la función:
El parámetro mylist es local a la función changeme. Cambiar mylist dentro de la
la función no afecta a mylist. La función no logra nada y finalmente esto
produciría el siguiente resultado −
Valores dentro de la función: [1, 2, 3, 4]
Valores fuera de la función: [10, 20, 30]
Argumentos de Función
Puedes llamar a una función utilizando los siguientes tipos de argumentos formales −
Argumentos requeridos
Argumentos de palabra clave
Argumentos predeterminados
Argumentos de longitud variable
Argumentos requeridos
Los argumentos requeridos son los argumentos pasados a una función en el orden posicional correcto.
Aquí, el número de argumentos en la llamada a la función debe coincidir exactamente con el
definición de función.
Para llamar a la función printme(), definitivamente necesitas pasar un argumento, de lo contrario, no funcionará.
da un error de sintaxis como sigue −
# La definición de la función está aquí
def imprimir(str):
Esto imprime una cadena pasada a esta función
imprimir str
regresar;
Ahora puedes llamar a la función printme
printme()
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Rastreo (llamada más reciente en primer lugar):
Archivo "[Link]", línea 11, en <módulo>
imprimirme();
TypeError: printme() takes exactly 1 argument (0 given)
Argumentos por palabra clave
Los argumentos de palabras clave están relacionados con las llamadas a funciones. Cuando usas palabras clave
En una llamada de función, el llamador identifica los argumentos por el nombre del parámetro.
Esto te permite omitir argumentos o colocarlos fuera de orden porque el Python
el intérprete es capaz de usar las palabras clave proporcionadas para hacer coincidir los valores con los parámetros.
También puedes hacer llamadas de palabras clave a la función printme() de las siguientes maneras −
La definición de la función está aquí
def imprimir(str):
Esto imprime una cadena pasada a esta función
imprimir str
retornar;
# Now you can call printme function
imprimir( str= Mi cadena
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Mi cadena
El siguiente ejemplo ofrece una imagen más clara. Tenga en cuenta el orden de los parámetros.
no importa.
# La definición de la función está aquí
def imprimirinfo(nombre, edad):
Esto imprime la información pasada a esta función
imprimir "Name: ", name
imprimir "Age ", age
retornar;
Ahora puedes llamar a la función printinfo
printinfo( age=50, name="miki" )
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Name: miki
Age 50
Argumentos por defecto
Un argumento predeterminado es un argumento que asume un valor predeterminado si no se proporciona un valor.
proporcionado en la llamada de función para ese argumento. El siguiente ejemplo da una idea sobre
argumentos predeterminados, imprime la edad predeterminada si no se pasa
# La definición de la función está aquí
def imprimirinfo( nombre, edad= 35 ):
Esto imprime la información pasada a esta función
imprimir "Name: ", name
imprimir "Age ", age
regresar;
Ahora puedes llamar a la función printinfo
printinfo( age=50, name="miki" )
printinfo( nombre="miki" )
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Name: miki
Age 50
Name: miki
Age 35
Argumentos de longitud variable
Es posible que necesites procesar una función para más argumentos de los que especificaste mientras
definiendo la función. Estos argumentos se llaman argumentos de longitud variable y son
no nombrado en la definición de la función, a diferencia de los argumentos requeridos y predeterminados.
La sintaxis para una función con argumentos de variables no clave es la siguiente −
def nombre_funcion([args_formales,] *tupla_args_varios):
"function_docstring"
conjunto_de_funciones
retornar [expresión]
Un asterisco (*) se coloca antes del nombre de la variable que contiene los valores de todos
argumentos variables no clave. Esta tupla permanece vacía si no hay argumentos adicionales
se especifican durante la llamada a la función. El siguiente es un ejemplo simple −
# La definición de la función está aquí
def imprimirinfo( arg1, *vartuple):
Esto imprime una variable pasada como argumento
imprimir La salida es:
imprimir arg1
para var en vartuple:
imprimir var
regresar;
Ahora puedes llamar a la función printinfo
printinfo( 10 )
imprimirinfo( 70 60 50 )
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Output is:
10
Output is:
70
60
50
LasFuncionesAnónimas
Estas funciones se llaman anónimas porque no están declaradas en el estándar
manera utilizando la palabra clave def. Puedes usar la palabra clave lambda para crear pequeños
funciones anónimas.
Las formas de lambda pueden tomar cualquier número de argumentos pero devolver solo un valor en
la forma de una expresión. No pueden contener comandos o múltiples
expresiones.
Una función anónima no puede ser una llamada directa a imprimir porque lambda requiere
una expresión
Las funciones lambda tienen su propio espacio de nombres local y no pueden acceder a variables.
aparte de aquellos en su lista de parámetros y aquellos en el espacio de nombres global.
Aunque parece que las lambda son una versión de una línea de una función, son
no son equivalentes a las sentencias en línea en C o C++, cuyo propósito es el de pasar
asignación de pila durante la invocación por razones de rendimiento.
Sintaxis
La sintaxis de las funciones lambda contiene solo una declaración, que es la siguiente -
lambda [arg1 [,arg2,.....argn]]:expresión
A continuación se muestra el ejemplo que muestra cómo funciona la forma lambda de la función −
# La definición de la función está aquí
sum= lambda arg1, arg2: arg1 + arg2;
Ahora puedes llamar a suma como una función
imprimir "Value of total : ", sum( 10, 20 )
imprimir Valor total: 20, 20 )
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Value of total : 30
Valor total: 40
ElEstadoDeRetorno
La declaración return [expresión] sale de una función, pasando opcionalmente un valor de regreso.
expresión al que llama. Una declaración de retorno sin argumentos es lo mismo que return
Ninguno.
Todos los ejemplos anteriores no devuelven ningún valor. Puedes devolver un valor de un
funciona de la siguiente manera −
# La definición de la función está aquí
def sumar(arg1, arg2):
Agrega ambos parámetros y devuélvelos.
total = arg1+ arg2
imprimir Dentro de la función:
retornar total;
Ahora puedes llamar a la función de suma
total= suma( 10 20 );
imprimir Fuera de la función:
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Dentro de la función: 30
Fuera de la función: 30
Alcance de las variables
No todas las variables en un programa pueden ser accesibles en todas las ubicaciones de ese programa. Esto
depende de dónde hayas declarado una variable.
El alcance de una variable determina la parte del programa donde puedes acceder a ella.
identificador particular. Hay dos ámbitos básicos de variables en Python −
Variables globales
Variables locales
Variables globales vs. locales
Las variables que se definen dentro de un cuerpo de función tienen un alcance local, y aquellas definidas
fuera tiene un alcance global.
Esto significa que las variables locales solo se pueden acceder dentro de la función en la que se encuentran
se declaran, mientras que las variables globales se pueden acceder en todo el cuerpo del programa
por todas las funciones. Cuando llamas a una función, las variables declaradas dentro de ella se traen
dentro del alcance. El siguiente es un ejemplo simple −
total= 0; Esta es una variable global.
# La definición de la función está aquí
def suma(arg1, arg2):
Agrega ambos parámetros y devuélvelos.
total = arg1+ arg2; Aquí total es una variable local.
imprimir Dentro de la función total local :
retornar total;
Ahora puedes llamar a la función de suma
suma( 10 20 );
imprimir Fuera de la función total global :
Cuando se ejecuta el código anterior, produce el siguiente resultado −
Dentro de la función total local: 30
Fuera de la función total global : 0
Cap. 8
Arreglos de Python: Crear, Invertir, Eliminar con Ejemplos de Arreglos en Python
¿Qué es un array en Python?
Un arreglo en Python es una colección de un tipo común de estructuras de datos que tienen elementos.
con el mismo tipo de dato. Se utiliza para almacenar colecciones de datos. En la programación en Python, un
los arreglos son manejados por el módulo "array". Si creas arreglos utilizando el módulo array,
los elementos del arreglo deben ser del mismo tipo numérico.
Listas vs Arreglos de Python
En Python, podemos tratar las listas como arreglos. Sin embargo, no podemos restringir el tipo.
de elementos almacenados en una lista. Por ejemplo:
elementos de diferentes tipos
a = [1,3.5,"Hello"]
Si creas arreglos usando elarreglomódulo, todos los elementos del array deben ser
del mismo tipo numérico.
importar arrayas arr
# Error
a = [Link]('d', [1,3.5,"Hola"])
Salida
Rastreo (la llamada más reciente fue la primera):
Archivo "<cadena>", línea 3, en <módulo>
a = [Link]('d', [1, 3.5, "Hola"])
TypeError: must be real number, not str
When to use arrays?
Las listas son mucho más flexibles que los arreglos. Pueden almacenar elementos de diferentes
tipos de datos que incluyen cadenas. Y, si necesitas hacer cálculos matemáticos
en arreglos y matrices, es mucho mejor usar algo comoNumPy.
Entonces, ¿cuáles son los usos de los arreglos creados a partir del módulo de arreglos de Python?
[Link] tipo es solo un delgado envoltorio sobre arrays de C que proporciona espacio-
almacenamiento eficiente de tipos de datos básicos estilo C. Si necesitas asignar un arreglo
que sabes que no cambiará, entonces los arreglos pueden ser más rápidos y usar menos memoria
que listas.
Creando arreglos de Python
Para crear un arreglo de valores numéricos, necesitamos importar elarreglomódulo. Para
ejemplo:
importar matrices como arr
a = [Link]('d', [1.1, 3.5, 4.5])
imprimir(a)
Salida
array('d', [1.1, 3.5, 4.5])
Aquí, creamos un arreglo deflotartipo. La cartades un tipo de código. Este
determina el tipo del array durante la creación.
Accediendo a los elementos de un arreglo en Python
Usamos índices para acceder a elementos de una matriz:
importar arreglos como arr
a = [Link]('i', [2,4,6,8])
print("Primer elemento:", a[0])
print("Segundo elemento:", a[1])
print("Último elemento:", a[-1])
Salida
Primer elemento: 2
Segundo elemento: 4
Último elemento: 8
Nota: El índice comienza en 0 (no en 1) similar a las listas.
Corte de Arrays en Python
Podemos acceder a una gama de elementos en un array utilizando el operador de rebanado.: .
importar arreglos como arr
numbers_list = [2,5,62,5,42,52,48,5]
numbers_array = [Link]('i', lista_numeros)
print(numbers_array[2:5])# 3ro a 5to
print(numbers_array[:-5]) # desde el principio hasta el cuarto
print(numbers_array[5:])# 6to hasta el final
print(numbers_array[:])# principio a fin
Salida
array('i', [62, 5, 42])
array('i', [2, 5, 62])
array('i', [52, 48, 5])
array('i', [2, 5, 62, 5, 42, 52, 48, 5])
Cambiando y Agregando Elementos
Los arreglos son mutables; sus elementos pueden ser cambiados de manera similar a las listas.
importar arrayas arr
números = [Link]('i', [1,2,3,5,7,10])
# changing first element
numbers[0] =0
imprimir(numeros)# Salida: array('i', [0, 2, 3, 5, 7, 10])
cambiando el 3er al 5to elemento
números[2:5] = [Link]('i', [4,6,8])
imprimir(números)# Salida: array('i', [0, 2, 4, 6, 8, 10])
Salida
array('i', [0, 2, 3, 5, 7, 10])
array('i', [0, 2, 4, 6, 8, 10])
Podemos agregar un elemento al arreglo utilizando elappend()método, o añadir varios
artículos usando elextender()método.
importar matriz como arr
números = [Link]('i', [1,2,3])
[Link](4)
imprimir(números)# Salida: array('i', [1, 2, 3, 4])
# extend() agrega un iterable al final del arreglo
[Link]([5,6,7])
imprimir(números)# Salida: array('i', [1, 2, 3, 4, 5, 6, 7])
Salida
array('i', [1, 2, 3, 4])
array('i', [1, 2, 3, 4, 5, 6, 7])
También podemos concatenar dos arreglos usando+ operador.
importar arrayas arr
impar = [Link]('i', [1,3,5])
even = [Link]('i', [2,4,6])
números = [Link]('i')# creando un array vacío de enteros
numbers = odd + even
imprimir(números)
Output
array('i', [1, 3, 5, 2, 4, 6])
Eliminando elementos de la matriz de Python
Podemos eliminar uno o más elementos de un array utilizando Python'sdeldeclaración.
importar matrices como arr
numero = [Link]('i', [1,2,3,3,4])
del number[2]# eliminando el tercer elemento
imprimir(número)# Salida: array('i', [1, 2, 3, 4])
el número# eliminando toda la matriz
imprimir(número)# Error: el arreglo no está definido
Salida
array('i', [1, 2, 3, 4])
Rastreo (llamada más reciente la última):
Archivo "<string>", línea 9, en <módulo>
print(number) # Error: array is not defined
NameError: el nombre 'number' no está definido
Podemos usar eleliminar()método para eliminar el elemento dado, ypop()método
to remove an item at the given index.
importar arreglos como arr
numbers = [Link]('i', [10,11,12,12,13])
[Link](12)
imprimir(números)# Salida: array('i', [10, 11, 12, 13])
print([Link](2))# Salida: 12
imprimir(números)# Salida: array('i', [10, 11, 13])
Salida
array('i', [10, 11, 12, 13])
12
array('i', [10, 11, 13])
Cómo buscar y obtener el índice de un valor en un arreglo
Con esta operación, puedes buscar un elemento en un array basándote en su valor. Esto
el método acepta solo un argumento, valor. Es un método no destructivo, que
significa que no afecta los valores del arreglo.
The syntax is
[Link](value)
Example:
Busquemos el valor de "3" en el arreglo. Este método retorna el índice del buscado
valor.
importar array como myarray
number = [Link]('b', [2, 3, 4, 5, 6])
print(nú[Link](3))
Output:
1
Esta operación devolverá el índice de la primera ocurrencia del elemento mencionado.
Cómo revertir un arreglo en Python
Esta operación invertirá todo el array.
Sintaxis: [Link]()
importar arreglo como miarreglo
number = [Link]('b', [1,2, 3])
nú[Link]()
imprimir(número)
Output:
array('b', [3, 2, 1])
Convertir array a Unicode:
El array de Python se puede convertir a Unicode. Para satisfacer esta necesidad, el array debe ser un
escriba 'u'; de lo contrario, obtendrá un "ValueError."
Ejemplo:
de array import array
p = array('u',[u'\u0050',u'\u0059',u'\u0054',u'\u0048',u'\u004F',u'\u004E'])
imprimir(p)
q = [Link]()
imprimir(q)
Output:
array('u', 'PYTHON')
PYTHON
Contar la ocurrencia de un valor en un arreglo
También puedes contar la ocurrencia de elementos en el arreglo usando [Link](x)
sintaxis.
Ejemplo:
importar arreglo como myarr
number = [Link]('b', [2, 3, 5, 4,3,3,3])
print(nú[Link](3))
Output:
Recorrer un arreglo
Puedes recorrer un array de Python utilizando bucles, como este:
importar array
balance = [Link]('i', [300,200,100])
para x en balance:
imprimir(x)
Salida:
300
200
100
Cap. 9
Principios de Programación Orientada a Objetos (OOP)
Objeto: La instancia de una clase / es la entidad que trabaja de una clase
Clase: Este es el modelo o estándar sobre la capacidad de lo que un objeto puede hacer
Método: Puede modificar un estado de la clase que se aplicaría a todas las instancias de la clase
Estas son como Objetos, sin embargo, pensemos en ello en estos términos: Un
el plano para un diseño de automóvil es la descripción de la clase, todos los automóviles fabricados a partir de eso
los planos son objetos de esa clase. Tu coche que ha sido hecho a partir de ese plano es un
instancia de esa clase.
Ahora que hemos cubierto estas palabras clave, pasemos a los cuatro principios de
object-oriented-programming: Encapsulamiento, Abstracción Herencia y
Polimorfismo.
Los Cuatro Principios de Programación Orientada a Objetos (OOP):
Encapsulamiento
La encapsulación se logra cuando cada objeto mantiene un estado privado, dentro de un
clase. Otros objetos no pueden acceder a este estado directamente, en su lugar, solo pueden invocar un
lista de funciones públicas. El objeto gestiona su propio estado a través de estas funciones y no
otra clase puede alterarlo a menos que se permita explícitamente. Para comunicarse con el objeto,
deberás utilizar los métodos proporcionados. Una forma en que me gusta pensar en la encapsulación es
usando el ejemplo de personas y sus perros. Si queremos aplicar la encapsulación, hacemos
así que encapsulando toda la lógica de "perro" en una clase Perro. El "estado" del perro está en el
variables privadas juguetonas, hambrientas y de energía, y cada una de estas variables tiene su
campos respectivos.
También hay un método privado: bark(). La clase de perro puede llamar a esto cada vez que lo necesite.
quiere, y las otras clases no pueden decirle al perro cuándo ladrar. También hay públicos
métodos como sleep(), play() y eat() que están disponibles para otras clases. Cada uno de
Estas funciones modifican el estado interno de la clase Dog y pueden invocar bark(), cuando
esto sucede cuando el estado privado y los métodos públicos están vinculados.
Abstracción
La abstracción es una extensión de la encapsulación. Es el proceso de seleccionar datos de
una piscina más grande para mostrar solo los detalles relevantes del objeto. Supongamos que quieres crear
una aplicación de citas y se te pide que recojas toda la información sobre tus usuarios.
You might receive the following data from your user: Full name, address, phone
number, favorite food, favorite movie, hobbies, tax information, social security number,
puntuación de crédito. Esta cantidad de datos es excelente, sin embargo, no toda ella es necesaria para crear un
dating profile. You only need to select the information that is pertinent to your dating
application from that pool. Data like Full name, favorite food, favorite movie, and
pasatiempos hacer sentido para a citas solicitud. El proceso de
obtener/eliminar/seleccionar la información del usuario de un grupo más grande se refiere a
Abstracción. Una de las ventajas de la Abstracción es poder aplicar lo mismo
la información que usaste para la aplicación de citas a otras aplicaciones con poca o ninguna
modificación.
Herencia
Inheritance is the ability of one object to acquire some/all properties of another
objeto. Por ejemplo, un niño hereda los rasgos de sus padres. Con la herencia,
la reutilización es una gran ventaja. Puedes reutilizar los campos y métodos de los existentes
clase. En Java, hay varios tipos de herencia: simple, múltiple, multinivel,
jerárquico e híbrido. Por ejemplo, la manzana es una fruta, así que asumamos que tenemos una clase
Fruta y una subclase de ella llamada Manzana. Nuestra Manzana adquiere las propiedades de la Fruta
clase. Otras clasificaciones podrían ser uva, pera y mango, etc. La fruta define una clase
de alimentos que son ovarios maduros de una planta, carnosos, que contienen una gran semilla en su interior o
numerosas semillas pequeñas. La sub-clase de manzana adquiere estas propiedades de la fruta y tiene
algunas propiedades únicas, que son diferentes de otras sub-clases de Fruta como el rojo,
redondo, depresión en la parte superior.
Polymorphism
El polimorfismo nos da una manera de usar una clase exactamente como su padre, así que no hay ninguna
confusión con la mezcla de tipos. Dicho esto, cada subclase de niño mantiene su propio
funciones/métodos tal como son. Si tuviéramos una superclase llamada Mamífero que tiene un
method called mammalSound(). The sub-classes of Mammals could be Dogs, whales,
elefantes y caballos. Cada uno de estos tendría su propia iteración de un mamífero
sonido (ladridos de perro, clics de ballena).
Herencia en Python
Inheritance is an important aspect of the object-oriented paradigm. Inheritance provides
reutilización de código en el programa porque podemos usar una clase existente para crear una nueva
clase en lugar de crearla desde cero.
En la herencia, la clase hija adquiere las propiedades y puede acceder a todos los datos.
miembros y funciones definidos en la clase padre. Una clase hija también puede proporcionar su
implementación específica a las funciones de la clase padre. En esta sección del tutorial,
discutiremos la herencia en detalle.
En python, una clase derivada puede heredar de la clase base simplemente mencionando la base en el
corchete después del nombre de la clase derivada. Considere la siguiente sintaxis para heredar una base
clase en la clase derivada.
Sintaxis
[Link] derivada-clase(baseclase):
56.< clase-suit
Una clase puede heredar múltiples clases mencionando todas ellas dentro de los paréntesis.
Considera la siguiente sintaxis.
Sintaxis
[Link]-class(<baseclass1>, <baseclass2>, ..... <baseclassn>):
58. <clase-salida>
Ejemplo 1
[Link]:
60. def hablar(self):
61. print("El Animal Habla")
62.#la clase hija Perro hereda la clase base Animal
[Link](Animal):
64. defbark(self):
65. perro ladrando
66.d = Perro()
[Link]()
[Link]()
Output:
dog barkingAnimal Speaking
Herencia multilevel en Python
La herencia múltiple es posible en Python al igual que en otros lenguajes orientados a objetos.
la herencia de nivel se archiva cuando una clase derivada hereda de otra clase derivada. Allí
no hay límite en el número de niveles hasta los cuales se puede alcanzar la herencia multinivel
python.
La sintaxis de la herencia multinivel se muestra a continuación.
Sintaxis
69.claseclase1:
70. <clase-sala>
71.classclass2(clase1):
72.< suite de clases
73.claseclase3(clase2):
74. <clasegrupo>
75..
76..
Ejemplo
[Link]:
78. definirspeak(self):
79. print("Animal Hablando")
[Link] clase hijo Perro hereda de la clase base Animal
[Link](Animal):
82. defladrar(self):
83. perro ladrando
[Link] clase hija Dogchild hereda de otra clase hija Dog
[Link]ño(Perro):
86. derrotar(self):
87. Comiendo pan...
88.d = PerroHijo()
[Link]()
[Link]()
[Link]()
Output:
perro ladrandoAnimal HablandoComiendo pan...
Herencia múltiple en Python
Python nos brinda la flexibilidad de heredar múltiples clases base en la clase hija.
La sintaxis para realizar la herencia múltiple se muestra a continuación.
Sintaxis
92.classBase1:
93. <clase-suit>
94.
95.classBase2:
96. <clase-conjunto>
97..
98..
99..
100. classBaseN:
101. <suite-de-clases>
102.
103. classDerivada(Base1, Base2, ...... BaseN):
104. <clase-sala>
El método issubclass(sub,sup)
El método issubclass(sub, sup) se utiliza para verificar las relaciones entre el
clases especificadas. Devuelve verdadero si la primera clase es una subclase de la segunda clase, y
falso de lo contrario.
Considera el siguiente ejemplo.
Ejemplo
105. classCalculation1:
106. defSuma(self,a,b):
107. returna+b;
108. classCalculation2:
109. defMultiplicación(self,a,b):
110. returna*b;
111. classDerived(Cálculo1, Cálculo2):
112. def Dividir(self, a, b):
113. returna/b;
114. d = Derived()
115. print(issubclass(Derived, Calculation2))
116. print(issubclass(Calculation1, Calculation2))
Output:
VerdaderoFalso
Ejemplo
1. Cálculo de clase 1:
2. defSuma(self,a,b):
3. returna+b;
4.classCalculation2:
5. defMultiplicación(self, a, b):
6. returna*b;
[Link](Calculo1, Calculo2):
8. defDividir(self,a,b):
9. returna/b;
10.d = Derivado()
[Link]([Link]ón(10,20))
[Link]([Link]ón(10,20))
[Link]([Link](10,20))
Output:
302000,5
El método isinstance (obj, clase)
El método isinstance() se utiliza para verificar la relación entre los objetos y
clases. Devuelve verdadero si el primer parámetro, es decir, obj es la instancia del segundo
parámetro, es decir, clase.
Considere el siguiente ejemplo.
Ejemplo
14.classCalculation1:
15. defSuma(self,a,b):
16. returna+b;
17.classCalculation2:
18. defMultiplicación(self,a,b):
19. returna*b;
[Link](Calculation1, Calculation2):
21. def dividir(self, a, b):
22. retorna/a;
23.d = Derivada()
[Link](isinstance(d,Derived))
Output:
Verdadero
Sobrescribir Métodos
We can provide some specific implementation of the parent class method in our child
clase. Cuando el método de la clase padre se define en la clase hija con algún específico
implementación, entonces el concepto se llama anulación de método. Es posible que necesitemos realizar
sobreescritura de métodos en el escenario donde la definición de una clase padre es diferente
se necesita un método en la clase hija.
Considere el siguiente ejemplo para realizar la sobreescritura de métodos en Python.
Ejemplo
25classAnimal:
26. def hablar(self):
27. print("hablando")
[Link](Animal):
29. defspeak(self):
30. Ladrando
31.d = Perro()
[Link]()
Output:
Ladrando
Ejemplo de la vida real de la sobreescritura de métodos
[Link]:
34. defgetroi(self):
35. return10;
[Link](Banco):
37. defgetroi(self):
38. return7;
39.
[Link](Banco):
41. defgetroi(self):
42. return8;
43.b1 = Banco()
44.b2 = SBI()
45.b3 = ICICI()
[Link]("Tasa de interés del banco:",[Link]());
[Link]("Tasa de interés del SBI:",[Link]());
[Link]("Tasa de interés de ICICI:", [Link]());
Output:
Bank Rate of interest: 10SBI Rate of interest: 7ICICI Rate of interest: 8
Abstracción de datos en python
La abstracción es un aspecto importante de la programación orientada a objetos. En Python, podemos
también realiza el ocultamiento de datos añadiendo el doble guion bajo (___) como prefijo al
atributo que debe ser ocultado. Después de esto, el atributo no será visible fuera de la
clase a través del objeto.
Considere el siguiente ejemplo.
Ejemplo
[Link]:
50. __count = 0;
51. def__init__(self):
52. Empleado.__count = Empleado.__count + 1
53. defmostrar(self):
54. print("El número de empleados", Employee.__count)
[Link] = Empleado()
56.emp2 = Empleado()
[Link]
58. imprimir(emp.__conteo)
[Link]
60. [Link]()
Output:
El número de empleados 2AttributeError: el objeto 'Empleado' no tiene atributo
'__count'
Polimorfismo en Python
¿Qué es el Polimorfismo?: La palabra polimorfismo significa tener muchas formas. En
programación, el polimorfismo significa el mismo nombre de función (pero diferentes firmas)
siendo utilizados para diferentes tipos.
Ejemplo de funciones polimórficas integradas:
# Programa de Python para demostrar poligonal incorporada
funciones mórficas
# len() siendo utilizado para una cadena
print(len("geeks"))
# len() se utiliza para una lista
imprimir(len([10,20,30]))
Output:53
Ejemplos de funciones polimórficas definidas por el usuario:
# Una función simple de Python para demostrar
Polimorfismo
definir añadir(x, y, z= 0):
regresar x+ y+z
# Código del conductor
imprimir(adicionar(2,3))
imprimir(adicionar(2,3,4))
Salida:
59
Polimorfismo con métodos de clase:
El siguiente código muestra cómo Python puede usar dos tipos de clase diferentes, de la misma manera. Nosotros
crea un bucle for que itere a través de una tupla de objetos. Luego llama a los métodos sin
preocuparnos por qué tipo de clase es cada objeto. Asumimos que estos métodos
en realidad existen en cada clase.
clase India():
def capital(self):
Nueva Delhi es la capital de India.
def language(self):
El hindi es el idioma más hablado de India.
def tipo(self):
La India es un país en desarrollo.
clase USA():
def capital(self):
Washington, D.C. es la capital de EE. UU.
def idioma(self):
El inglés es el idioma principal de los EE. UU.
def tipo(self):
Estados Unidos es un país desarrollado.
obj_ind= India
obj_usa= EE. UU.
para país en (obj_ind, obj_usa)
paí[Link]()
[Link]()
paí[Link]()
Output:Nueva Delhi es la capital de la India. El hindi es el más hablado.
idioma hablado de India. India es un país en desarrollo. Washington,
D.C. es la capital de EE. UU. El inglés es el idioma principal de EE. UU.
es un país desarrollado.
Polimorfismo con Herencia:
En Python, el polimorfismo nos permite definir métodos en la clase hija que tienen el mismo
nombre como los métodos en la clase padre. En la herencia, la clase hija hereda el
métodos de la clase padre. Sin embargo, es posible modificar un método en un hijo
clase que ha heredado de la clase padre. Esto es particularmente útil en casos
donde el método heredado de la clase padre no se ajusta del todo a la clase hija. En
en tales casos, re-implementamos el método en la clase hija. Este proceso de re-
implementar un método en la clase hija se conoce como Sobrescritura de Métodos.
clase Pájaro
def intro(self):
Hay muchos tipos de aves.
def flight(self):
La mayoría de los pájaros pueden volar, pero algunos no pueden.
clase sparrow(Bird):
def flight(self):
Los gorriones pueden volar.
clase ostrich(Bird):
def vuelo(self):
Los avestruces no pueden volar.
obj_bird= Pájaro()
obj_spr= gorrión()
obj_ost= avestruz()
obj_pá[Link]()
obj_pá[Link]()
obj_spr.intro()
obj_spr.vuelo()
obj_ost.intro()
obj_ost.vuelo()
Output:Hay muchos tipos de aves. La mayoría de las aves pueden volar pero
algunos no pueden. Hay muchos tipos de aves. Los gorriones pueden volar. Hay
muchos tipos de aves. Los avestruces no pueden volar.
Polymorphism with a Function and objects:
También es posible crear una función que pueda recibir cualquier objeto, permitiendo que
polimorfismo. En este ejemplo, vamos a crear una función llamada “func()” que tomará un
objeto que nombraremos 'obj'. Aunque estamos usando el nombre 'obj', cualquier instancia
el objeto podrá ser llamado en esta función. A continuación, vamos a darle algo a la función
para hacer eso utiliza el objeto 'obj' que le pasamos. En este caso llamemos a los tres métodos,
es decir, capital(), language() y type(), cada una de las cuales está definida en las dos clases 'India'
y 'EE. UU.'.
e.g Next, let’s create instantiations of both the ‘India’ and ‘USA’ classes if we don’t have
ya. Con esos, podemos llamar a su acción usando la misma función func() :
def func(obj):
[Link]()
[Link]()
[Link]()
obj_ind= India
obj_usa= EE. UU.
func(obj_ind)
func(obj_usa)
Código: Implementando Polimorfismo con una Función
clase India():
def capital(self):
Nueva Delhi es la capital de India.
def language(self):
El hindi es el idioma más hablado de la India.
def tipo(self):
La India es un país en desarrollo.
clase USA():
def capital(self):
Washington, D.C. es la capital de EE. UU.
def language(self):
El inglés es el idioma principal de EE. UU.
def tipo(self):
Estados Unidos es un país desarrollado.
def func(obj):
[Link]()
[Link]()
[Link]()
obj_ind= India
obj_usa= EE. UU.
func(obj_ind)
func(obj_usa)
Output:Nueva Delhi es la capital de India. El hindi es el más ampliamente hablado.
idioma hablado de la India. La India es un país en desarrollo. Washington,
D.C. es la capital de [Link]. El inglés es el idioma principal de [Link].
es un país desarrollado.
Cap.10
Crea una interfaz de usuario en Python-Tkinter
Las aplicaciones informáticas modernas son fáciles de usar. La interacción del usuario no está restringida a
Entrada/salida basada en consola. Tienen una interfaz gráfica de usuario (GUI) más ergonómica gracias a
a procesadores de alta velocidad y hardware gráfico potente. Estas aplicaciones pueden
recibir entradas a través de clics del mouse y permitir al usuario elegir entre
alternativas con la ayuda de botones de opción, listas desplegables y otros elementos de GUI (o
widgets).
Tales aplicaciones se desarrollan utilizando una de las diversas bibliotecas gráficas disponibles. A
la biblioteca de gráficos es un conjunto de herramientas de software que tiene una colección de clases que definen un
funcionalidad de varios elementos de la interfaz gráfica. Estas bibliotecas gráficas generalmente están escritas en
C/C++. Muchos de ellos han sido portados a Python en forma de módulos importables.
Algunos de ellos se enumeran a continuación:
Tkinter es el puerto de Python para el conjunto de herramientas GUI Tcl-Tk desarrollado por Fredrik Lundh.
el módulo se incluye en las distribuciones estándar de Python para todas las plataformas.
PyQtis, la interfaz de Python para Qt, es un marco de GUI muy popular y multiplataforma.
PyGTKel módulo que porta Python a otro popular conjunto de widgets de GUI se llama
GTK.
WxPythones un contenedor de Python alrededor de WxWidgets, otra gráfica multiplataforma
biblioteca.
Este tutorial explica el uso de Tkinter en el desarrollo de programas en Python basados en GUI.
Aplicación GUI básica
Los elementos de la GUI y su funcionalidad se definen en el módulo Tkinter. Lo siguiente
el código demuestra los pasos para crear una interfaz de usuario.
de tkinter import *
ventana=Tk()# agregar widgets aquí
[Link]('Hola Python')
[Link]("300x200+10+20")
[Link]()
Primero, importa el módulo TKinter. Después de importar, configura el objeto de la aplicación mediante
llamando a la función Tk(). Esto creará una ventana de nivel superior (raíz) con un marco con un
barra de título, caja de control con los botones de minimizar y cerrar, y un área de cliente para contener otros
widgets. El método geometry() define el ancho, la altura y las coordenadas de la esquina superior izquierda
esquina del marco como se indica a continuación (todos los valores están en píxeles):
[Link]("anchoxalto+XPOS+YPOS") El objeto de la aplicación luego entra en un
bucle de escucha de eventos al llamar al método themainloop(). La aplicación ahora está constantemente
esperando cualquier evento generado en los elementos en él. El evento podría ser texto ingresado en
un campo de texto, una selección hecha del menú desplegable o botón de radio, clic simple/doble
acciones del ratón, etc. La funcionalidad de la aplicación implica ejecutar apropiadamente
funciones de callback en respuesta a un tipo particular de evento. Discutiremos el evento
el manejo más tarde en este tutorial. El bucle de eventos se terminará cuando se presione el botón de cerrar
se hace clic en la barra de título. El código anterior creará la siguiente ventana:
Ventana de Python-Tkinter
Todas las clases de widgets de Tkinter heredan de la clase Widget. Vamos a añadir
los widgets más comúnmente utilizados.
Botón
El botón se puede crear utilizando la clase Button. El constructor de la clase Button requiere
una referencia a la ventana principal y a las opciones.
Firma: Botón(ventana, atributos)
Puedes configurar las siguientes propiedades importantes para personalizar un botón:
título del botón
bg : background colour
fg : foreground colour
font : font name and size
imagen : para ser mostrada en lugar de texto
comando: función a ser llamada al hacer clic
Example: Button
Copiar
de tkinter import *
window=Tk()
btn=Button(window,text="This is Button widget",fg='blue')
[Link](x=80,y=100)
[Link]('HolaPython')
[Link]("300x200+10+10")
[Link]()
Etiqueta
Se puede crear una etiqueta en la interfaz de usuario en Python utilizando la clase Label. El constructor de Label
requiere el objeto de ventana de nivel superior y parámetros de opciones. Los parámetros de opción son
similar al objeto Botón.
Lo siguiente añade una etiqueta en la ventana.
Ejemplo: Etiqueta
de tkinter import *
window=Tk()
lbl=Label(window, Esto es Etiqueta widget fg='red',
font=("Helvetica", 16))
[Link](x=60,y=50)[Link]('Hola Python')
[Link]('300x200+10+10')
[Link]()
Aquí, el título de la etiqueta se mostrará en color rojo usando Helvetica
fuente de tamaño 16 puntos.
Entrada
Este widget renderiza un cuadro de texto de una sola línea para aceptar la entrada del usuario. Para texto de varias líneas
usa el widget de Texto. Aparte de las propiedades ya mencionadas, la clase Entry
el constructor acepta lo siguiente:
bd: tamaño del borde del cuadro de texto; el valor predeterminado es 2 píxeles.
mostrar: para convertir el cuadro de texto en un campo de contraseña, establezca la propiedad mostrar en '*'.
El siguiente código agrega el campo de texto.
txtfld=Entry(window, Esto es Entrada Widget
bg='black',fg='white', bd=5)
El siguiente ejemplo crea una ventana con un botón, una etiqueta y una entrada
campo.
Crear Widgets
Copiar
de tkinter import *
window=Tk()
btn=Button(window, text="This is Button widget", fg='blue')
[Link](x=80, y=100)
lbl=Label(window, Esto es Etiqueta widget fg='red',
font=("Helvetica", 16))
[Link](x=60, y=50)
txtfld=Entry(window, text="This is Entry Widget", bd=5)
[Link](x=80, y=150)
ventana.título('Hola Python')
[Link]("300x200+10+10")
[Link]()
El ejemplo anterior creará la siguiente ventana.
Create UI Widgets in Python-Tkinter
Widgets de selección
Botón de opción: Este widget muestra un botón de cambio que tiene un estado DE ENCENDIDO/APAGADO. Puede haber
hay más de un botón, pero solo uno de ellos estará ENCENDIDO en un momento dado.
Checkbutton:This is also a toggle button. A rectangular check box appears before its
La condición ON se muestra con la marca de verificación en el cuadro que desaparece cuando está
hizo clic en DESACTIVAR.
Combobox: Esta clase está definida en el módulo ttk del paquete tkinter. Rellena el desplegable
descargar datos de un tipo de colección, como una tupla o una lista como parámetro de valores.
Listbox: A diferencia del Combobox, este widget muestra toda la colección de elementos de cadena.
el usuario puede seleccionar uno o varios elementos.
El siguiente ejemplo demuestra la ventana con los widgets de selección:
Botón de opción, Botón de verificación, Cuadro de lista y Cuadro combinado:
Widgets de selección
Copiar
de tkinter importar *
de [Link] importar
Comboboxwindow=Tk()
var = StringVar()
[Link]("uno")
data=("one","two","three","four")
cb=Combobox(ventana, valores=dato)
[Link](x=60, y=150)
lb=Listbox(ventana, altura=5, modo_selección='múltiple')
para datos numin
[Link](END,num)
[Link](x=250, y=150)
v0=IntVar()
[Link](1)
r1=Radiobutton(window, text="macho", variable=v0,value=1)
r2=Radiobutton(window, text="female", variable=v0,value=2)
[Link](x=100,y=50)
[Link](x=180, y=50)
v1 = IntVar()
v2 = IntVar()
C1 = Checkbutton(window, text ="Cricket", variable = v1)
C2 = Checkbutton(window, text ="Tennis", variable = v2)
[Link](x=100, y=100)
[Link](x=180, y=100)
[Link]('Hola Python')
[Link]("400x300+10+10")[Link]()
Crear interfaz de usuario en Python-Tkinter
Manejo de Eventos
Un evento es una notificación recibida por el objeto de la aplicación de varios widgets GUI como
un resultado de la interacción del usuario. El objeto de Aplicación siempre está anticipando eventos a medida que
ejecuta un bucle de escucha de eventos. Las acciones del usuario incluyen clics o doble clic del botón del ratón,
la tecla del teclado presionada mientras el control está dentro del cuadro de texto, cierto elemento gana o va
fuera de enfoque, etc.
Los eventos se expresan como cadenas en formato <modificador-tipo-calificador>.
Muchos eventos se representan solo como calificador. El tipo define la clase del evento.
La siguiente tabla muestra cómo Tkinter reconoce diferentes eventos:
Evento Modificador Escribe Calificador Acción
<Botón-1> Botón 1 Botón izquierdo del ratón
clic.
<Botón-2> Pero 2 Middle mouse
clic del botón.
<Destruir> Destruir La ventana está siendo
destruido.
Doble Botón 1 Double-click first
ratón botón 1
<Entrar> Entrar El cursor entra
ventana.
<Exponer> Exponer Ventana completamente o
parcialmente expuesto.
<KeyPress-a> TeclaPresionada a Cualquier tecla ha sido
presionado.
<KeyRelease> Liberación de Tecla Cualquier tecla ha sido
liberado.
<Salir> Dejar El cursor sale
ventana.
<Imprimir> Imprimir La tecla PRINT tiene
ha sido presionado.
<Enfocarse> Enfoque en Ganancias de widget
enfoque.
<EnfoqueFuera> Enfoque Fuera el widget pierde el enfoque.
Un evento debe registrarse con uno o más widgets de GUI en la aplicación. Si es
no, será ignorado. En Tkinter, hay dos maneras de registrar un evento con un widget.
La primera forma es utilizando el método bind() y la segunda forma es utilizando el comando
parámetro en el constructor del widget.
Método Bind()
Elbind()el método asocia un evento a una función de retorno para que,
cuando ocurre el evento, se llama a la función.
Sintaxis:
[Link](evento, callback)
Por ejemplo, para invocar elMyButtonClicked() función en el botón izquierdo
click, use the following code:
Incluso vinculante
Copiar
de tkinter import *
ventana=Tk()
btn = Button(window, text='OK')
[Link]('<Botón-1>',
MiBotónClicado)
El objeto de evento se caracteriza por muchas propiedades como source
widget, coordenadas de posición, número de botón del mouse y tipo de evento.
Estos se pueden pasar a la función de devolución de llamada si es necesario.
Parámetro de comando
Cada widget responde principalmente a un tipo particular. Por ejemplo, el botón es una fuente de
el evento del botón. Entonces, está vinculado a él por defecto. Los métodos constructores de muchos widgets
las clases tienen un parámetro opcional llamado comando. Este parámetro de comando se establece
para llamar la función que se invocará cada vez que ocurra su evento vinculado. Esto
el método es más conveniente que el método bind().
btn = Button(window, text='OK', command=myEventHandlerFunction)
En el ejemplo dado a continuación, la ventana de la aplicación tiene dos campos de entrada de texto y
otro para mostrar el resultado. Hay dos objetos de botón con las leyendas Agregar
y Restar. Se espera que el usuario introduzca el número en los dos widgets de Entrada. Su
la suma o la resta se muestra en el tercero.
El primer botón (Agregar) está configurado utilizando el parámetro de comando. Su valor es theadd()
método en la clase. El segundo botón utiliza el método bind() para registrar la izquierda
clic del botón con el método thesub(). Ambos métodos leen el contenido de los campos de texto por
el método get() del widget Entry, analizar a números, realizar la suma/resta
y mostrar el resultado en el tercer campo de texto utilizando el método insert().
Ejemplo:
Copiar
de tkinter import *
clase MiVentana:
def __init__(self, win):
self.lbl1=Label(win, text='First number')
self.lbl2=Label(win, text='Second number')
self.lbl3=Label(win, text='Result')
self.t1=Entrada(bd=3)
self.t2=Entrada()
self.t3=Entrada()
self.btn1 = Button(win, text='Add')
self.btn2=Button(win, text='Subtract')
[Link](x=100, y=50)
[Link](x=200, y=50)
[Link](x=100, y=100)
[Link](x=200, y=100)
self.b1=Button(win,text='Add',command=[Link])
self.b2=Button(win, text='Subtract')
[Link]('<Button-1>', [Link])
[Link](x=100, y=150)
[Link](x=200, y=150)
[Link](x=100, y=200)
[Link](x=200, y=200)
def agregar(self):
[Link](0, 'fin')
num1=int([Link]())
num2=int([Link]())
result=num1+num2
[Link](END, str(result))
def sub(self, evento):
[Link](0, 'fin')
num1=int([Link]())
num2=int([Link]())
result=num1-num2
[Link](END, str(resultado))
window=Tk()
mywin=MyWindow(window)
ventana.título('Hola Python')
[Link]("400x300+10+10")
[Link]()
El ejemplo anterior crea la siguiente interfaz de usuario.
Interfaz de usuario en Python-Tkinter
Así, puedes crear la interfaz de usuario usando TKinter en Python.
Cap. 11
Conexión a la Base de Datos Oracle en Python
A veces, como parte de la programación, necesitamos trabajar con las bases de datos porque nosotros
quiero almacenar una gran cantidad de información, por lo que usamos bases de datos, como Oracle, MySQL,
etc. Así que en este artículo, discutiremos la conectividad de la base de datos Oracle utilizando Python.
Esto se puede hacer a través del módulo namecx_Oracle.
Base de Datos Oracle
Para comunicarse con cualquier base de datos a través de nuestro programa en Python, necesitamos algunos
conector que no es más que el módulo cx_Oracle.
Para instalar cx-Oracle :
Si estás usando Python >= 3.6, usa el siguiente comando en Linux:
pip instalar cx-Oracle
Si estás usando Python >= 3.6, utiliza el siguiente comando en Windows: –
py -m pip install cx-Oracle
Con este comando, puedes instalar el paquete cx-Oracle, pero es necesario instalar Oracle.
base de datos primero en tu PC.
Importar módulo específico de la base de datos
Ex. importar cx_Oracle
conectar(): Ahora establece una conexión entre el programa de Python y
Base de datos Oracle utilizando la función connect().
con = cx_Oracle.connect('usuario/contraseña@localhost')
cursor(): Para ejecutar una consulta SQL y proporcionar resultados, se necesita un objeto especial.
requerido que no es más que el objeto cursor().
cursor = cx_Oracle.cursor()
método execute/executemany :
[Link](sqlquery) – – – -> para ejecutar una sola consulta.
[Link](sqlqueries) – – – -> para ejecutar una única consulta con múltiples enlaces
variables/espacios reservados.
“Realizar operaciones CRUD básicas usando CX_ORACLE, Parte 1.”
Additional Setup
Antes de ejecutar los ejemplos de actualización con cx_Oracle, crea un script de reinicio y una plantilla.
eso manejará todas las actualizaciones de ejemplo.
Restablecer plantillaParamantener los ejemplos limpios y precisos, querrás restablecer el
datos a veces. Crea un nuevo archivo llamado reset_data.py con el siguiente código y luego ejecútalo
cada vez que desees restablecer los datos. (Ten en cuenta que esta versión agrega datos de mascotas que no
incluido en otros artículos de esta serie.)
importar cx_Oracle
importar os
connectString = [Link]('db_connect')
con = cx_Oracle.conectar(cadenaDeConexión)
cur = [Link]()
Eliminar filas
statement = 'delete from cx_pets'
[Link](declaración)
# Restablecer la columna de identidad
statement = 'alter table cx_pets modify id generated
POR DEFECTO como identidad (INICIAR CON 8)
[Link](declaración)
# Eliminar filas
statement = 'delete from cx_people'
[Link](declaración)
# Reiniciar la columna de identidad
statement = 'alter table cx_people modify id
generado
POR DEFECTO como identidad (INICIAR CON 3)
[Link](declaración)
# Insertar filas predeterminadas
rows = [(1, 'Bob', 35, 'I like dogs'),
(2, 'Kim', 27, 'I like birds')]
[Link] = 2
[Link](int, 20, int, 100)
[Link]("insertar en cx_people(id, nombre,
edad, notas)
valores (:1, :2, :3, :4)
[Link]()
# Insertar filas predeterminadas
rows = [(1, 'Duke', 1, 'dog'),
(2, 'Pepe', 2, 'bird'),
(3, 'Princesa', 1, 'serpiente')
(4, 'Polly', 1, 'bird'),
(5, 'Rollo', 1, 'horse'),
(6, 'Buster', 1, 'dog'),
(7, 'Fido', 1, 'cat')]
[Link] = 2
[Link](int, 20, int, 100)
[Link]("insertar en cx_pets (id, nombre,
owner, type)
valores (:1, :2, :3, :4)
[Link]()
[Link]()
Actualizar [Link] ejecutar los ejemplos de actualización en este artículo, crea un nuevo archivo llamado
[Link] con el siguiente código
importar cx_Oracle
importar os
connectString = [Link]('db_connect')
con = cx_Oracle.connect(cadena_de_conexión)
def obtener_todas_las_filas(etiqueta, tipo_de_datos='personas'):
Consulta todas las filas
cur = [Link]()
si (tipo_de_dato == 'mascotas'):
statement = 'select id, name, owner, type
from cx_pets order by owner, id
else:
statement = 'select id, name, age, notes
de cx_people ordenado por id
[Link](declaración)
res = [Link]()
imprimir(etiqueta + ': ')
imprimir (res)
print(' ')
[Link]()
obtener_todas_las_filas('Datos Originales')
# Tu código aquí
obtener_todas_las_filas('Nuevos Datos')
Y para cada ejercicio de ejemplo, reemplaza la línea # Tu código aquí con lo específico
código de ejemplo. La plantilla [Link] incluye la función auxiliar get_all_rows(), que
encapsula una declaración SELECT para verificar que las actualizaciones funcionaron. La SELECT
la funcionalidad está cubierta enParte 2de esta serie.
Nota: Por favor revisa todo el código de ejemplo en este artículo y ejecútalo solo si estás seguro de que lo hará.
no causar ningún problema con tu sistema.
Actualización simple
Ahora realiza una actualización simple que modifique un solo registro en la tabla cx_people.
Reemplace la línea # Su código aquí en [Link] con el siguiente fragmento de código y ejecute
[Link] en tu sesión de Python:
cur = [Link]()
statement = 'update cx_people set age = :1 where id
= :2'
[Link](declaración, (31, 1))
[Link]()
Cuando ejecuto este código en mi sesión de Python, veo
Original Data:
[(1, 'Bob', 35, 'I like dogs'), (2, 'Kim', 27, 'I
como pájaros
Nuevos Datos:
[(1, 'Bob', 31, 'I like dogs'), (2, 'Kim', 27, 'I
como pájaros
Esto es lo que hace el código [Link]:
Obtiene unobjeto cursordesde la conexión. Usarás este cursor para realizar tu
operaciones de base de datos.
Prepara una declaración SQL UPDATE, cambiando la edad a 31 para el registro cuyo id es 1.
Ejecuta la declaración, utilizando variables de enlace. (VerParte 2de esta serie para una explicación
de variables de enlace.)
Comete eltransacción.
Profundización
Ahora actualiza las notas de Bob aMe gustan los gatos.
Cuando hayas terminado, los resultados deberían ser
Original Data:
[(1, 'Bob', 31, 'I like dogs'), (2, 'Kim', 27, 'I
como aves
New Data:
[(1, 'Bob', 31, 'I like cats'), (2, 'Kim', 27, 'I
como pájaros
¿Cómo se ve el código exitoso? Así:
cur = [Link]()
statement = 'update cx_people set notes = :1 where
id = :2'
[Link] declaración, ("Me gustan los gatos", 1)
[Link]()
Restablece los datos. Ahora es un buen momento para ejecutar reset_data.py.
Cambio de texto base. Ahora cambia el
boilerplate obtener_todas_las_filasstatements in [Link] to get pet data.
Reemplace las últimas tres líneas de código de [Link] con
obtener_todas_las_filas('Datos Originales', 'mascotas')
# Your code here
obtener_todas_las_filas('Nuevos Datos', 'mascotas')
Asegúrate de que tu cláusula WHERE sea específica
Tenga en cuenta que el ejemplo anterior utilizó la columna id en el WHERE
cláusula. Para este conjunto de datos, id es la clave primaria. No siempre
necesitas usar una clave primaria, pero asegúrate de actualizar solo las filas
tienes la intención de.
Ahora veamos cómo actualizar múltiples filas. Hagamos que Bob le dé a su perro,
Duque, a Kim. Reemplaza el# Tu código aquílínea en [Link] con el
sigue este fragmento de código y ejecuta [Link] en tu sesión de Python:
cur = [Link]()
statement = 'update cx_pets set owner = :1
donde propietario = :2 y tipo = :3
[Link](declaración, (2, 1, 'perro'))
[Link]()
Cuando ejecuto este código en mi sesión de Python, veo
Datos originales:
[(1, 'Duke', 1, 'dog'), (3, 'Princess', 1, 'snake'),
(4, 'Polly', 1, 'bird'), (5, 'Rollo', 1, 'horse'),
(6, 'Buster', 1, 'dog'), (7, 'Fido', 1, 'cat'),
(2, 'Pepe', 2, 'bird')]
Nuevos datos:
[(3, 'Princess', 1, 'snake'), (4, 'Polly', 1,
pájaro
(5, 'Rollo', 1, 'horse'), (7, 'Fido', 1, 'cat'),
(1, 'Duke', 2, 'dog'), (2, 'Pepe', 2, 'bird'),
(6, 'Buster', 2, 'dog')]
Aquí está lo que hace el código [Link]:
Obtiene un objeto cursor de la conexión
Prepara una sentencia SQL UPDATE, cambiando el valor del propietario
a 2 (Kim) por los registros con un valor de propietario de 1 (Bob) y un
tipo de valor deperro
Ejecuta la declaración, utilizando variables de enlace
Confirma la transacción
Este ejemplo utiliza solo valores de propietario y tipo, y asume que
Bob tiene solo un perro, Duke, como en los datos originales. Pero el nuevo restablecimiento
la función de datos agregó un segundo perro, Buster. Este ejemplo
demuestra lo que puede suceder cuando múltiples usuarios están trabajando con
el mismo conjunto de datos.
En los datos, el único identificador único paracx_pets es id. Bob puede que tenga
dos perros—o incluso dos perros llamados Duke. Si tienes la intención de cambiar un
fila específica, asegúrate de usar un identificador único.
También ayuda a . . .
Verifica el número de filas afectadas
Ahora devolvamos a Buster a Bob. Esta vez, usa la columna de id único.
y muestra el número de filas afectadas, [Link].
Reemplaza el# Su código aquílínea en [Link] con el siguiente código
fragmento, y ejecuta [Link] en tu sesión de Python:
cur = [Link]()
statement = 'update cx_pets set owner = :1 where id
= :2'
[Link](statement, (1, 6))
[Link]()
print('Número de filas actualizadas: ' +
str([Link])
imprimir(' ')
Cuando ejecuto este código en mi sesión de Python, veo
Original Data:
[(3, 'Princess', 1, 'snake'), (4, 'Polly', 1,
pájaro
(5, 'Rollo', 1, 'horse'), (7, 'Fido', 1, 'cat'),
(1, 'Duke', 2, 'dog'), (2, 'Pepe', 2, 'bird'),
(6, 'Buster', 2, 'dog')]
Número de filas actualizadas: 1
Nuevos Datos:
[(3, 'Princesa', 1, 'serpiente'), (4, 'Polly', 1,
pájaro
(5, 'Rollo', 1, 'horse'),(6, 'Buster', 1, 'dog'),
(7, 'Fido', 1, 'cat'), (1, 'Duke', 2, 'dog'),
(2, 'Pepe', 2, 'bird')]
Esto es lo que hace el código [Link]:
Obtiene un objeto cursor de la conexión
Prepara una declaración SQL UPDATE, cambiando el valor del propietario
a 1 (Bob) para los registros con un valor de id de 6 (Buster)
Ejecuta la declaración, utilizando variables de enlace
Confirma la transacción
[Link] muestra el número de filas afectadas por INSERT,
Instrucciones UPDATE y DELETE y el número de filas devueltas
en una declaración SELECT.
Otra inmersión más profunda
Ahora le daremos todos los pájaros a Kim—todos los pájaros que ella no tiene ya.
y imprime el número de filas afectadas.
Cuando termines, los resultados deberían ser
Original Data:
[{"number":3,"name":"Princesa","category":1,"animal":"serpiente"},{"number":4,"name":"Polly","category":1,"animal":""}]
pájaro
(5, 'Rollo', 1, 'horse'), (6, 'Buster', 1, 'dog'),
(7, 'Fido', 1, 'cat'), (1, 'Duke', 2, 'dog'),
(2, 'Pepe', 2, 'bird')]
Número de filas actualizadas: 1
Nuevos Datos:
[{"id":3,"name":"Princesa","value":1,"type":"serpiente"},{"id":5,"name":"Rollo","value":1,"type":""}]
caballo
(6, 'Buster', 1, 'dog'), (7, 'Fido', 1, 'cat'),
(1, 'Duke', 2, 'dog'), (2, 'Pepe', 2, 'bird'),
(4, 'Polly', 2, 'bird')]
¿Cómo se ve el código exitoso? Así:
cur = [Link]()
statement = 'update cx_pets set owner = :1
donde tipo = :2 y propietario != :3
[Link](declaración, (2, 'pájaro', 2))
[Link]()
Número de filas actualizadas:
str([Link])
imprimir(' ')
commit(): Para consultas DML (Lenguaje de Manipulación de Datos) que comprenden
operaciones como actualizar, insertar, eliminar. Necesitamos commit() solo entonces el resultado
se refleja en la base de datos.
fetchone(), fetchmany(int), fetchall():
1. fetchone() : Este método se utiliza para obtener una sola fila de la parte superior
del conjunto de resultados.
2. fetchmany(int): Este método se utiliza para obtener un número limitado de
filas basadas en el argumento que se le pasa.
3. fetchall() : Este método se utiliza para obtener todas las filas del conjunto de resultados.
cerrar(): Después de haber terminado, es obligatorio cerrar todas las operaciones.
[Link]()
[Link]()
1. Creación de tabla
# importando módulo
importar cx_Oracle
Crear una tabla en la base de datos de Oracle
intentar:
con = cx_Oracle.connect('tigre/scott@localhost:1521/xe')
imprimir([Link])
Ahora ejecuta la consulta SQL
cursor = [Link]()
# Creando una tabla de empleados
[Link]("crear tabla empleado(empid entero clave primaria, nombre ")
varchar2(30), salario número(10, 2))
Tabla creada con éxito
excepto cx_Oracle.DatabaseError como e:
print("Hay un problema con Oracle", e)
# escribiendo finalmente si ocurre algún error
entonces también podemos cerrar todas las operaciones de la base de datos
finalmente:
si el cursor:
[Link]()
si con:
[Link]()
Las declaraciones DDL no requieren ser confirmadas. Se confirman automáticamente. En el
en el programa anterior, he utilizado el método execute() para ejecutar una sentencia SQL.
2. Insertando un registro en la tabla utilizando el método execute()
# importando módulo
importar cx_Oracle
# Insertando un registro en una tabla en la base de datos Oracle
intenta:
con = cx_Oracle.connect('tiger/scott@localhost:1521/xe')
cursor = [Link]()
#[Link] = True
Inserción de un registro en la tabla empleado
[Link]('insertar en empleado valores(10001,\'Rahul\',50000.50)')
# commit() para que los cambios se reflejen en la base de datos
[Link]()
Registro insertado con éxito
except cx_Oracle.DatabaseError as e:
print("Hay un problema con Oracle", e)
escribiendo finalmente si ocurre algún error
entonces también podemos cerrar todas las operaciones de la base de datos
finalmente
si el cursor:
[Link]()
si con:
[Link]()
Output:
Registro insertado con éxito
Una vez que ejecutamos cualquier instrucción DML, es necesario confirmar la transacción. Puedes
realizar una transacción de 2 maneras: -
1. [Link](). Esto se utiliza para confirmar una transacción manualmente.
2. [Link] = True. Esto se utiliza para confirmar una transacción automáticamente.
3. Insertar múltiples registros en una tabla utilizando el método executemany()
importar cx_Oracle
Cargar datos desde un archivo csv a una tabla de Oracle utilizando executemany
intentar
con = cx_Oracle.connect('tigre/scott@localhost:1521/xe')
excepto cx_Oracle.DatabaseError como er:
print('Hay un error en la base de datos de Oracle:', er)
de lo contrario:
intentar
cur = [Link]()
data = [[10007, 'Vikram', 48000.0], [10008, 'Sunil', 65000.1], [10009,
'Sameer', 75000.0]]
cur = [Link]()
Insertando múltiples registros en la tabla de empleados
# (:1,:2,:3) son marcadores de posición. Recogen datos de una lista suministrada como
argumento
[Link]('insertar en empleado valores(:1,:2,:3)', datos)
excepto cx_Oracle.DatabaseError como er:
print('Hay un error en la base de datos de Oracle:', er)
excepto Exception como er:
imprimir(er)
de lo contrario:
Para confirmar la transacción manualmente
[Link]()
Se han insertado múltiples registros con éxito
finalmente:
si cur:
[Link]()
si con:
[Link]()
Output:
Se insertaron varias registros con éxito
Puede haber ocasiones en las que sea necesario ejecutar una instrucción SQL varias veces
basado en los diferentes valores que se le proporcionan cada vez. Esto se puede lograr usando
método executemany(). Proporcionamos una lista que contiene una lista de valores que reemplazarán
marcadores de posición en una consulta SQL que se ejecutará.
Del caso anterior
1 es reemplazado por el valor 10007
:2 se sustituye por el valor 'Vikram'
:3 is substituted by value 48000.0
Y así sucesivamente (siguiente lista de valores en una lista dada)
De manera similar, puedes proporcionar una lista de diccionarios. Pero en lugar de un marcador, usaremos el
variable de enlace (discutido más adelante).
Ver el conjunto de resultados de una consulta de selección usando fetchall(), fetchmany(int),
fetchone()
importar cx_Oracle
intentar:
con = cx_Oracle.connect('tger/scot@localhost:1521/xe')
excepto cx_Oracle.DatabaseError como er:
print('Hay un error en la base de datos de Oracle:', er)
de lo contrario:
intentar:
cur = [Link]()
fetchall() se utiliza para recuperar todos los registros del conjunto de resultados
[Link]('seleccionar * de empleado')
filas = [Link]()
imprimir(filas)
fetchmany(int) se utiliza para obtener un número limitado de registros del conjunto de resultados según
se pasó un argumento entero en él
[Link]('seleccionar * de empleado')
filas = [Link](3)
imprimir(filas)
fetchone() se usa para obtener un registro de la parte superior del conjunto de resultados
[Link]('select * from empleado')
filas = [Link]()
imprimir(filas)
excepto cx_Oracle.DatabaseError como er:
print('Hay un error en la base de datos de Oracle:', er)
excepto Excepton como er:
imprimir('Error:' + str(er))
finalmente:
si cur:
[Link]()
finalmente:
si con:
[Link]()
Output:
[(10001, 'Rahul', 50000.5), (10002, 'Sanoj', 40000.75), (10003,
'Soumik', 30000.25), (10004, 'Sayan', 45000.0), (10005, 'Sobhan',
60000.1), (10006, 'Gururaj', 70000.0), (10007, 'Vikram', 48000.0),
(10008, 'Sunil', 65000.1), (10009, 'Sameer', 75000.0)]
[(10001, 'Rahul', 50000.5), (10002, 'Sanoj', 40000.75), (10003,
'Soumik', 30000.25)]
(10001, 'Rahul', 50000.5)
En el programa anterior, hemos utilizado 3 métodos
[Link](): El fetchall() se utiliza para recuperar todos los registros del conjunto de resultados.
[Link](int) :fetchmany(int) se utiliza para recuperar un número limitado de
registros del conjunto de resultados según el argumento entero que se le pasa.
[Link]() : El fetchone() se utiliza para obtener un registro de la parte superior de la
conjunto de resultados.
5. Ver el conjunto de resultados de una consulta select utilizando una variable vinculada
importar cx_Oracle
intentar
con = cx_Oracle.connect('tiger/scott@localhost:1521/xe')
excepto cx_Oracle.DatabaseError como er:
print('Hay un error en la base de datos de Oracle:', er)
de lo contrario:
intentar:
cur = [Link]()
[Link]('seleccionar * de empleado donde salario > :sal', {'sal': 50000})
filas = [Link]()
imprimir filas
excepto cx_Oracle.DatabaseError como er:
print('Hay un error en la base de datos de Oracle:', er)
excepto Exception como er:
print('Error:', er)
finalmente:
si cur:
[Link]()
finalmente
si con:
[Link]()
Output:
[(10001, 'Rahul', 50000.5), (10005, 'Sobhan', 60000.1), (10006,
'Gururaj', 70000.0),
(10008, 'Sunil', 65000.1), (10009, 'Sameer', 75000.0)]
En este caso, he pasado un diccionario en el método execute(). Este diccionario contiene el
nombre de la variable de enlace como clave, y su valor correspondiente. Cuando la consulta SQL es
ejecutado, el valor de la clave se sustituye en lugar de la variable de enlace.