Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Que Es Python
Que Es Python
Ir a la navegaci�nIr a la b�squeda
Este art�culo trata sobre el lenguaje de programaci�n. Para el grupo de humoristas,
v�ase Monty Python.
Para el rev�lver, v�ase Colt Python.
Para otros usos de este t�rmino, v�ase Pit�n.
Python
Python-logo-notext.svg
Desarrollador(es)
Python Software Foundation
Sitio web oficial
Informaci�n general
Extensiones comunes .py, .pyc, .pyd, .pyo, .pyw, .pyz
Paradigma Multiparadigma: orientado a objetos, imperativo, funcional, reflexivo
Apareci� en 1991
Dise�ado por Guido van Rossum
�ltima versi�n estable
3.7.41?
2.7.161? (*8 de julio de 2019 (16 d�as) *2 de marzo de 2019 (4 meses y 22 d�as))
Sistema de tipos Fuertemente tipado, din�mico
Implementaciones CPython, IronPython, Jython, Python for S60, PyPy, Pygame,
ActivePython, Unladen Swallow
Dialectos Stackless Python, RPython
Influido por ABC, ALGOL 68, C, Haskell, Icon, Lisp, Modula-3, Perl, Smalltalk,
Java
Ha influido a Boo, Cobra, D, Falcon, Genie, Groovy, Ruby, JavaScript, Cython,
Go Latino
Sistema operativo Multiplataforma
Licencia Python Software Foundation License
[editar datos en Wikidata]
Python es un lenguaje de programaci�n interpretado cuya filosof�a hace hincapi� en
una sintaxis que favorezca un c�digo legible.
La �ltima versi�n liberada proveniente de CWI fue Python 1.2. En 1995, van Rossum
continu� su trabajo en Python en la Corporation for National Research Initiatives
(CNRI) en Reston, Virginia, donde lanz� varias versiones del software.
Python 2.0 tom� una caracter�stica mayor del lenguaje de programaci�n funcional
Haskell: listas por comprensi�n. La sintaxis de Python para esta construcci�n es
muy similar a la de Haskell, salvo por la preferencia de los caracteres de
puntuaci�n en Haskell, y la preferencia de Python por palabras claves alfab�ticas.
Python 2.0 introdujo adem�s un sistema de recolecci�n de basura capaz de recolectar
referencias c�clicas.12?
Posterior a este doble lanzamiento, y despu�s que van Rossum dej� CNRI para
trabajar con desarrolladores de software comercial, qued� claro que la opci�n de
usar Python con software disponible bajo GNU GPL era muy deseable. La licencia
usada entonces, la Python License, inclu�a una cl�usula estipulando que la licencia
estaba gobernada por el estado de Virginia, por lo que, bajo la �ptica de los
abogados de Free Software Foundation (FSF), se hac�a incompatible con GPL. CNRI y
FSF se relacionaron para cambiar la licencia de software libre de Python para
hacerla compatible con GPL. En el a�o 2001, van Rossum fue premiado con FSF Award
for the Advancement of Free Software.
Python 1.6.1 es esencialmente el mismo que Python 1.6, con unos pocos arreglos de
bugs, y con una nueva licencia compatible con GPL.2?
Una innovaci�n mayor en Python 2.2 fue la unificaci�n de los tipos en Python (tipos
escritos en C), y clases (tipos escritos en Python) dentro de una jerarqu�a. Esa
unificaci�n logr� un modelo de objetos de Python puro y consistente.14? Tambi�n
fueron agregados los generadores que fueron inspirados por el lenguaje Icon.15?
�ndice
1 Caracter�sticas y paradigmas
2 Filosof�a
3 Modo interactivo
4 Elementos del lenguaje
4.1 Comentarios
4.2 Variables
4.3 Tipos de datos
4.4 Condicionales
4.5 Bucle for
4.6 Bucle while
4.7 Listas y Tuplas
4.8 Diccionarios
4.9 Sentencia Switch Case
4.9.1 Usando if, elif, else
4.9.2 Usando diccionario
4.10 Conjuntos
4.11 Listas por comprensi�n
4.12 Funciones
4.13 Clases
4.14 M�dulos
4.15 Interfaz al sistema operativo
4.16 Comodines de archivos
4.17 Argumentos de l�nea de �rdenes
4.18 Matem�tica
4.19 Fechas y Tiempos
5 Sistema de objetos
6 Biblioteca est�ndar
7 Implementaciones
8 Incidencias
9 V�ase tambi�n
10 Referencias
11 Bibliograf�a
12 Enlaces externos
Caracter�sticas y paradigmas
Python es un lenguaje de programaci�n multiparadigma. Esto significa que m�s que
forzar a los programadores a adoptar un estilo particular de programaci�n, permite
varios estilos: programaci�n orientada a objetos, programaci�n imperativa y
programaci�n funcional. Otros paradigmas est�n soportados mediante el uso de
extensiones.
Filosof�a
Los usuarios de Python se refieren a menudo a la Filosof�a Python que es bastante
an�loga a la filosof�a de Unix. El c�digo que sigue los principios de Python de
legibilidad y transparencia se dice que es "pythonico". Contrariamente, el c�digo
opaco u ofuscado es bautizado como "no pythonico" ("unpythonic" en ingl�s). Estos
principios fueron descritos por el desarrollador de Python Tim Peters en El Zen de
Python
Existen otros programas, tales como IDLE, bpython o IPython,20? que a�aden
funcionalidades extra al modo interactivo, como el autocompletado de c�digo y el
coloreado de la sintaxis del lenguaje.
>>> 1 + 1
2
>>> a = range(10)
>>> print(list(a))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Elementos del lenguaje
Python fue dise�ado para ser le�do con facilidad. Una de sus caracter�sticas es el
uso de palabras donde otros lenguajes utilizar�an s�mbolos. Por ejemplo, los
operadores l�gicos !, || y && en Python se escriben not, or y and, respectivamente.
Curiosamente el lenguaje Pascal es junto con COBOL uno de los lenguajes con muy
clara sintaxis y ambos son de la d�cada del 70. La idea del c�digo claro y legible
no es algo nuevo.
'''
Comentario m�s largo en una l�nea en Python
'''
print ("Hola mundo") # Tambi�n es posible a�adir un comentario al final de una
l�nea de c�digo
Variables
Las variables se definen de forma din�mica, lo que significa que no se tiene que
especificar cu�l es su tipo de antemano y puede tomar distintos valores en otro
momento, incluso de un tipo diferente al que ten�a previamente. Se usa el s�mbolo =
para asignar valores.
x = 1
x = "texto" # Esto es posible porque los tipos son asignados din�micamente
Tipos de datos
Python 3. The standard type hierarchy.png
Los tipos de datos se pueden resumir en esta tabla:
>>> if condicion1:
... hacer1
>>> elif condicion2:
... hacer2
>>> elif condicion3:
... hacer3
>>> else:
... hacer
En esa estructura se ejecutara controlando la condicion1, si no se cumple pasara a
la siguiente y as� sucesivamente hasta entrar en el else. Un ejemplo practico
seria:
Usando diccionario
Podemos usar un diccionario para el mismo ejemplo:
Conjuntos
Los conjuntos se construyen mediante set(items) donde items es cualquier objeto
iterable, como listas o tuplas. Los conjuntos no mantienen el orden ni contienen
elementos duplicados.
Se suelen utilizar para eliminar duplicados de una secuencia, o para operaciones
matem�ticas como intersecci�n, uni�n, diferencia y diferencia sim�trica.
>>> conjunto_inmutable = frozenset(["a", "b", "a"]) # Se utiliza una lista como
objeto iterable
>>> conjunto_inmutable
frozenset(['a', 'b'])
>>> conjunto1 = set(["a", "b", "a"]) # Primer conjunto mutable
>>> conjunto1
set(['a', 'b'])
>>> conjunto2 = set(["a", "b", "c", "d"]) # Segundo conjunto mutable
>>> conjunto2
set(['a', 'c', 'b', 'd']) # Recuerda, no mantienen el orden, como los diccionarios
>>> conjunto1 & conjunto2 # Intersecci�n
set(['a', 'b'])
>>> conjunto1 | conjunto2 # Uni�n
set(['a', 'c', 'b', 'd'])
>>> conjunto1 - conjunto2 # Diferencia (1)
set([])
>>> conjunto2 - conjunto1 # Diferencia (2)
set(['c', 'd'])
>>> conjunto1 ^ conjunto2 # Diferencia sim�trica
set(['c', 'd'])
Listas por comprensi�n
Una lista por comprensi�n (en ingl�s: list comprehension) es una expresi�n compacta
para definir listas. Al igual que lambda, aparece en lenguajes funcionales.
Ejemplos:
Implementaciones
Existen diversas implementaciones del lenguaje:
El 13 de febrero de 2009 se lanz� una nueva versi�n de Python bajo el nombre clave
"Python 3000" o,29? abreviado, "Py3K".30? Esta nueva versi�n incluye toda una serie
de cambios que requieren reescribir el c�digo de versiones anteriores. Para
facilitar este proceso junto con Python 3 se ha publicado una herramienta
autom�tica llamada 2to3.31?32?
En el sistema operativo Windows 10, a partir de su actualizaci�n de mayo de 2019,
dispone de la caracter�stica de preinstalaci�n asistida del lenguaje Python y
varias de sus herramientas adicionales.33?
V�ase tambi�n
PyPI. Repositorio de paquetes de software de terceros para Python.
Django. Framework de desarrollo web.
CubicWeb. Framework de desarrollo web en plataforma Sem�ntica.
Pygame. Conjunto de m�dulos para la creaci�n de videojuegos en dos dimensiones.
Tkinter. Binding de la biblioteca gr�fica Tcl/Tk para Python.
PyGTK. Binding de la biblioteca gr�fica GTK para Python.
wxPython. Binding de la biblioteca gr�fica wxWidgets para Python.
PyQt. Binding de la biblioteca gr�fica Qt para Python.
PySide. Binding de la biblioteca gr�fica Qt para Python por Nokia.
Plone. Sistema de gesti�n de contenidos.
Biopython, Colecci�n de bibliotecas orientadas a la bioinform�tica para Python.
NumPy. Biblioteca que da soporte al c�lculo con matrices y vectores.
SciPy. Biblioteca que permite realizar an�lisis cient�fico como optimizaci�n,
�lgebra lineal, integraci�n, ecuaciones diferenciales entre otras.
Pandas. Biblioteca que permite el an�lisis de datos a trav�s de series y
�dataframes�.
Pyomo. Colecci�n de paquetes de software de Python para formular modelos de
optimizaci�n
Referencias
�Python Documentation by Version�. python.org. Consultado el 13 de julio de 2019.
History and License
The Making of Python
�Why was Python created in the first place?�. General Python FAQ.
1. Whetting Your Appetite
Tannhausser (12 de julio de 2018). �Guido van Rossum dimite como l�der de Python�
(html). La Mirada del Replicante. Archivado desde el original el 12 de julio de
2018. Consultado el 21 de julio de 2018. �Como veis no solo transfiere el poder,
sino que evita designar sucesor y deja en manos de los corel developers la tarea de
organizar como ser� la transici�n, as� como el modelo de gobierno en un futuro.�
van Rossum, Guido (12 de julio de 2018). �[python-committers] Transfer of power�
(html). Mail Archive Com (en ingl�s). Archivado desde el original el 12 de julio de
2018. Consultado el 21 de julio de 2018. �I am not going to appoint a successor. So
what are you all going to do? Create a democracy? Anarchy? A dictatorship? A
federation?�
http://svn.python.org/view/python/trunk/Misc/HISTORY?view=markup&pathrev=51814 �
Aviso: archivo grande. Ver el final del archivo.
The fate of reduce() in Python 3000
Computer Programming for Everybody
Index of /cp4e
What's New in Python 2.0
PEP 227 -- Statically Nested Scopes
PEPs 252 and 253: Type and Class Changes
PEP 255: Simple Generators
PEP 282 -- A Logging System
threading � Higher-level threading interface
"Holand�s" hace referencia a Guido van Rossum, el autor del lenguaje de
programaci�n Python, que es holand�s. Tambi�n hace referencia a la gran
concentraci�n de desarrolladores holandeses conocidos en relaci�n a otras
nacionalidades.
PEP 20 -- The Zen of Python
�Copia archivada�. Archivado desde el original el 4 de agosto de 2018. Consultado
el 25 de febrero de 2010.
Python Software Foundation. �More control flow options�. Python v2.7.8
Documentation (en ingl�s). Consultado el 20 de julio de 2014.
Eric Huss. �Function Definition�. The C Library Reference Guide (en ingl�s).
Archivado desde el original el 18 de enero de 2015. Consultado el 20 de julio de
2014.
�lvarez, Miguel �ngel (2 de noviembre de 2001). �Funciones en Javascript�.
desarrolloweb.com (en ingl�s). Consultado el 20 de julio de 2014.
David Goodger. �Code Like a Pythonista: Idiomatic Python�. Python.net (en ingl�s).
Consultado el 20 de julio de 2014.
Encapsulaci�n en Python
�Ejemplos de la GUI de Python (Tutorial de Tkinter) - Like Geeks�. Like Geeks. 22
de enero de 2018. Consultado el 16 de julio de 2018.
�Peque�o paseo por la Biblioteca Est�ndar�. Tutorial de Python (y Django!) en
Espa�ol. Consultado el 16 de agosto de 2017.
Real Academia Espa�ola y Asociaci�n de Academias de la Lengua Espa�ola (2014).
�incidencia : Acontecimiento que sobreviene en el curso de un asunto o negocio y
tiene con �l alguna conexi�n.�. Diccionario de la lengua espa�ola (23.� edici�n).
Madrid: Espasa. ISBN 978-84-670-4189-7. Consultado el 23 de julio de 2018.
Python 3.0.1
PEP 3000 -- Python 3000
2to3 - Automated Python 2 to 3 code translation
Novedades de Python 3.0
Dower, Steve (21 de mayo de 2019). �Who put Python in the Windows 10 May 2019
Update?� (html). Microsoft Blog (en ingl�s). Consultado el 23 de mayo de 2019.
Bibliograf�a
Knowlton, Jim (2009). Python. tr: Fern�ndez V�lez, Mar�a Jes�s (1 edici�n). Anaya
Multimedia-Anaya Interactiva. ISBN 978-84-415-2513-9.
Martelli, Alex (2007). Python. Gu�a de referencia. tr: Gorj�n Salvador, Bruno (1
edici�n). Anaya Multimedia-Anaya Interactiva. ISBN 978-84-415-2317-3.
Enlaces externos
(en ingl�s) Dive into Python, ejemplos de las principales caracter�sticas de este
lenguaje.
Tutorial de Python
Tutorial de Python (y Django!) en Espa�ol
Inmersi�n en Python
Aprender a Pensar como un Programador con Python
(en ingl�s) Gu�a del principiante
Python para impacientes
Categor�as: PythonLenguajes de programaci�n orientada a objetosLenguajes de
programaci�n de alto nivelLenguajes de programaci�n din�micamente tipadosLenguajes
de programaci�n educativosSoftware de 1991Pa�ses Bajos en 1991Ciencia y tecnolog�a
de los Pa�ses Bajos
Men� de navegaci�n
No has accedidoDiscusi�nContribucionesCrear una
cuentaAccederArt�culoDiscusi�nLeerEditarVer historialBuscar
Buscar en Wikipedia
Portada
Portal de la comunidad
Actualidad
Cambios recientes
P�ginas nuevas
P�gina aleatoria
Ayuda
Donaciones
Notificar un error
En otros proyectos
Wikimedia Commons
Wikilibros
Imprimir/exportar
Crear un libro
Descargar como PDF
Versi�n para imprimir
Herramientas
Lo que enlaza aqu�
Cambios en enlazadas
Subir archivo
P�ginas especiales
Enlace permanente
Informaci�n de la p�gina
Elemento de Wikidata
Citar esta p�gina
En otros idiomas
???????
Deutsch
English
??????
Bahasa Indonesia
Bahasa Melayu
???????
????
??
84 m�s
Editar enlaces
Esta p�gina se edit� por �ltima vez el 24 jul 2019 a las 21:13.
El texto est� disponible bajo la Licencia Creative Commons Atribuci�n Compartir
Igual 3.0; pueden aplicarse cl�usulas adicionales. Al usar este sitio, usted acepta
nuestros t�rminos de uso y nuestra pol�tica de privacidad.
Wikipedia� es una marca registrada de la Fundaci�n Wikimedia, Inc., una
organizaci�n sin �nimo de lucro.
Pol�tica de privacidadAcerca de WikipediaLimitaci�n de
responsabilidadDesarrolladoresDeclaraci�n de cookiesVersi�n para m�vilesWikimedia
Foundation Powered by MediaWiki