# Python/Generalidades/Características especificas de Python

* Índice de la sección «Generalidades»
* Breve historia de Python
* Palabras reservadas, operadores y símbolos del lenguaje
* Tipos de datos fundamentales
* Operaciones de entrada y salida básica
* Tabla de operadores con asociatividad y precedencia
* Estructuras de decisión
* Estructuras de iteración
* Funciones
* Características especificas de Python
* Cómo se compila Python
Algunas características de el lenguaje de programación Python: Simple: es un lenguaje simple y minimalista. Leer un buen programa en Python es como leer ingles. Permite concentrarse en la solución del problema en lugar de la sintaxis.
Sencillo de aprender: dado a que este es simple, aprenderlo resulta aun mas fácil. Libre y Fuente Abierta: Es un ejemplo de un FLOSS(Free/Libre and Open syntaxhighlight Software) . Se puede distribuir libremente copias de este software, leer su código fuente, hacerle cambios, etc. Esto ha contribuido a que este lenguaje se haya vuelto tan bueno, el afán de la comunidad por tener un mejor Python.
Lenguaje de Alto Nivel: Cuando escribes programas en Python nunca debes preocuparte por detalles de bajo nivel, como manejar la memoria empleada por tu programa.
Portable: Debido a su naturaleza de ser Open syntaxhighlight, Python ha sido portado a diversas plataformas. Todos tus programas trabajaran en alguna de esas plataformas sin requerir cambio alguno. Sin embargo, debes ser lo suficientemente cuidadoso de evitar las características con dependencia de sistema.
Puedes usar Python sobre Linux, Windows, Macintosh, Solaris, OS/2, Amiga, AROS, AS/400, BeOS, OS/390, z/OS, Palm OS, QNX, VMS, Psion, Acorn RISC OS, VxWorks, PlayStation, Sharp Zaurus, Windows CE y PocketPC.
Interpretado: No existen compilaciones separadas y pasos de ejecución. Solo ejecutas el programa desde el código fuente. Internamente, Python convierte el código fuente en una forma intermedia llamada bytecodes, después los traduce en el lenguaje nativo de tu computadora y ejecuta.
Orientado a Objetos: El programa esta construido sobre procedimientos o funciones los cuales no son nada mas que piezas de programa reutilizables.
Ampliable: Puede ser modificado por la comunidad si en caso necesitas que una función ejecute mejor.
Librerías Extendidas: La librería estándar de Python es de hecho muy amplia. Puede ayudarte a hacer varias cosas que involucran: expresiones regulares, generación de documentos, evaluación de unidades, pruebas, procesos, bases de datos, navegadores web, CGI, ftp, correo electrónico, XML, XML-RPC, HTML, archivos WAV, criptografía, GUI(graphical user interfaces/interfase gráfica del usuario) usando Tk, y también otras funciones dependientes del Sistema. Recuerde, todo esto está siempre disponible donde quiera que Python se instala y forma parte de la denominada filosofía de Python "batteries included".
    Lo que ahorra un tiempo considerable en el desarrollo del programa pues no es necesario compilar ni enlazar.
    Pero también representa mayor lentitud mientras se ejecuta el programa, ya que cada vez que se ejecute debe ser interpretado por el intérprete. En cambio, al compilar, se ahorra eso al pasar a código máquina.
    Esto facilita experimentar con características del lenguaje, escribir programas desechables o probar funciones durante el desarrollo del programa. También es una calculadora muy útil : ).

### Gramática EBNF de Python

Python: Índice · Introducción · Enlaces :
* Instalación de Python ·
* Generalidades ·
* Funciones, constantes nativas ·
* Tipos de datos nativos ·
* Herramientas de control de flujo ·
* Definición de funciones ·
* Leer y escribir archivos ·
* Su primer programa en Python ·
* Entrada y salida ·
* Estructuras de datos ·
* Errores y excepciones
* Interfaces gráficas ·
* Módulos relacionados con el sonido ·
* Módulos relacionados con el tiempo ·
* Módulos relacionados con la matemática