descripción general
introducir
Python es un lenguaje de programación informática multiplataforma, un sustituto del lenguaje ABC y un lenguaje de tipo dinámico orientado a objetos. Diseñado originalmente para escribir scripts de automatización (shell), a medida que la versión se actualiza continuamente y se agregan nuevas características del lenguaje, se utiliza cada vez más para el desarrollo de proyectos independientes y de gran escala.
Python admite varios paradigmas de programación, incluida la programación funcional, imperativa, estructurada, orientada a objetos y reflexiva. El intérprete de Python es fácilmente extensible y se puede ampliar con nuevas funciones y tipos de datos usando C o C++ (u otros lenguajes que se pueden llamar desde C). Python también se utiliza como lenguaje de programación de extensión en software personalizable. Python tiene un sistema de tipo dinámico y recolección de basura, puede administrar automáticamente el uso de la memoria y tiene una biblioteca estándar enorme y extensa, que proporciona código fuente o de máquina para cada plataforma principal del sistema.
Python es un lenguaje de programación de alto nivel que combina interpretabilidad, compilación, interactividad y orientación a objetos.
- Python es un lenguaje interpretado: esto significa que no hay ninguna parte de compilación en el proceso de desarrollo. Similar a los lenguajes PHP y Perl.
- Python es un lenguaje interactivo: esto significa que los desarrolladores pueden ejecutar código directamente después de un mensaje de Python >>>.
- Python es un lenguaje orientado a objetos: esto significa que Python admite un estilo o técnica de programación orientada a objetos en la que el código se encapsula en objetos.
- **Python es un lenguaje para principiantes: **Python es un excelente lenguaje para programadores principiantes que admite una amplia gama de desarrollo de aplicaciones, desde simples procesadores de texto hasta navegadores WWW y juegos.
Ventajas y desventajas de Python
Ventajas de Python:
-
alta calidad del software
Python mantiene una sintaxis clara y concisa y un modelo de programación altamente consistente. Un estilo de diseño coherente puede garantizar el desarrollo de un código bastante estandarizado.
Para los errores, Python proporciona un mecanismo de salida "seguro y razonable". Python admite el manejo de excepciones, que puede capturar y manejar de manera efectiva los errores que ocurren cuando el programa se está ejecutando, y puede monitorear y manejar estos errores.
-
rápido desarrollo
Python se compromete a optimizar la velocidad de desarrollo: sintaxis concisa, tipos dinámicos, sin necesidad de compilar, soporte de biblioteca enriquecido y otras características permiten a los programadores llevar a cabo rápidamente el desarrollo de proyectos. Python a menudo requiere sólo unas pocas docenas de líneas de código para desarrollar funciones que requieren cientos de líneas de código C.
-
Poderoso
Python es lo suficientemente potente y tiene muchas interfaces con otros sistemas, por lo que es completamente posible crear prototipos de sistemas completos en Python.
Para completar tareas más específicas, Python ha incorporado muchas herramientas de biblioteca precodificadas, que van desde expresiones regulares hasta programación de redes y programación de bases de datos. En el campo de la web, el análisis de datos, etc., Python también tiene un marco poderoso que puede ayudar al rápido desarrollo de los servicios. Por ejemplo: Django, TruboGears, Pylons, etc.
-
fácil de expandir
Python es fácilmente extensible y (en el caso de CPython) funcionalmente extensible a través de módulos escritos en C o C++, lo que lo convierte en un lenguaje adhesivo flexible para programar el comportamiento de otros sistemas y componentes.
-
Multiplataforma
Python es multiplataforma. Python se puede encontrar en varios sistemas operativos (Linux, Windows, MacOS, Unix, etc.). Debido a que Python está escrito en C y debido a la portabilidad de C, Python puede ejecutarse en cualquier plataforma con un compilador ANSI C. Aunque existen algunos módulos específicos desarrollados para diferentes plataformas, el software de propósito general desarrollado en Python en cualquier plataforma puede modificarse ligeramente o ejecutarse intacto en otras plataformas. Esta portabilidad se aplica tanto a diferentes arquitecturas como a diferentes sistemas operativos.
Desventajas de Python
-
Python se ejecuta muy lentamente en comparación con los programas C/C++
Debido a que Python es un lenguaje interpretado, el código se traducirá línea por línea a código de máquina que la CPU pueda entender cuando se ejecute. Este proceso de traducción lleva mucho tiempo y, por lo tanto, es muy lento. El programa C se compila directamente en código de máquina que la CPU puede ejecutar antes de ejecutarse, por lo que es muy rápido. Sin embargo, según la ley 28, la mayoría de los programas no requieren alta velocidad. En algunas situaciones que requieren alta velocidad de ejecución, los diseñadores de Python tienden a utilizar la tecnología JIT o reescribir esta parte del programa en lenguaje C/C++.
Y el tiempo de desarrollo es un recurso valioso, más valioso que el tiempo de CPU. Los beneficios de la velocidad de desarrollo de Python a menudo superan las pérdidas de velocidad de ejecución, especialmente dada la alta potencia de procesamiento de las computadoras modernas. Algunas mejoras pueden ser demasiado difíciles de implementar o pueden afectar la portabilidad o mantenibilidad del código. No todas las mejoras de rendimiento merecen la pena.
-
El código no se puede cifrar
Si estás distribuyendo un programa Python, en realidad estás distribuyendo el código fuente. Esto es diferente del lenguaje C. El lenguaje C no necesita publicar el código fuente, solo el código de máquina compilado. Es imposible deducir completamente el código C del código máquina.
La dirección de desarrollo y los escenarios de aplicación de Python.
-
desarrollo web
Python proporciona una gran cantidad de módulos para admitir la programación de sockets y la programación de subprocesos múltiples y puede desarrollar fácil y rápidamente programas de servicios de red. Admite la última tecnología XML, lenguaje json, programación de bases de datos y el marco ORM de Python, lo que hace que sea muy conveniente operar la base de datos.
Python también tiene excelentes marcos de desarrollo web como Django, Tornado y Flask, y es compatible con numerosos complementos de código abierto, que son suficientes para satisfacer diversas necesidades de desarrollo web.
-
Operación y mantenimiento automatizados
La interfaz integrada de Python para los servicios del sistema operativo lo hace ideal para escribir herramientas de administración portátiles y widgets para el mantenimiento de sistemas operativos. Los programas Python pueden buscar archivos y árboles de directorios, ejecutar otros programas y utilizar procesos e hilos para el procesamiento paralelo.
-
Rastreador web
En términos de procesamiento de texto, el módulo re proporcionado por Python puede admitir expresiones regulares y también proporciona módulos de análisis SGML y XML.Muchos programadores usan Python para desarrollar programas XML.
-
procesamiento de gráficos
Compatible con bibliotecas de gráficos como PIL y Tkinter, es conveniente para el procesamiento de gráficos. Para aplicaciones multimedia, el módulo PyOpenGL de Python encapsula la "interfaz de programación de aplicaciones OpenGL", que puede realizar procesamiento de imágenes bidimensionales y tridimensionales. El módulo PyGame se puede utilizar para escribir software de juegos.
-
Además, Python también se utiliza en juegos, inteligencia artificial, análisis de big data, robótica y otros campos. Python es el lenguaje de programación preferido para la inteligencia artificial.
Tipos de pitón
-
Python
Proceso de ejecución: programa----(intérprete de C)----(código de bytes)----(código de máquina)----cpu
La versión oficial de Python, la implementación original y mejor mantenida de Python, escrita en C. Las nuevas características del idioma generalmente aparecen aquí primero.
La implementación de CPython convierte archivos fuente (archivos py) en archivos de código de bytes (archivos pyc), que luego se ejecutan en la máquina virtual Python.
-
Jyhton
Proceso de ejecución: programa----(intérprete de Java)----(código de bytes)----(código de máquina)----cpu
La implementación Java de Python que se puede utilizar como lenguaje de secuencias de comandos para aplicaciones Java o para crear aplicaciones utilizando bibliotecas de clases Java y, a menudo, se utiliza para crear pruebas para bibliotecas Java. Jython compila dinámicamente el código Python en el código de bytes de Java y luego lo ejecuta en la JVM.
-
PyPy
Proceso de ejecución: programa----(código de bytes)----(código de máquina)----cpu
Una implementación de Python escrita completamente en Python. Admite varias funciones avanzadas que no se encuentran en otras implementaciones, como compatibilidad sin pila y un compilador Just in Time. PyPy traduce el código fuente de Python a código de bytes y luego lo compila en código de máquina.
-
Otras categorías: Python para .NET, IronPython, RubyPython, Brython…
Versión de Python (python 2, python 3)
Hay dos versiones de Python, Python 2.X y Python 3:
-
La última versión de Python 2.x es Python 2.7 (lanzada en 2010), que será compatible oficialmente hasta 2020.
-
La primera versión de Python 3.X Python 3.0 (lanzada en 2008)
Python 3.X no es compatible con Python 2.X, y python2.6 se lanza oficialmente como una versión de transición a Python 3.0, y todas las versiones posteriores a 2.6 son versiones de transición.
¿Por qué desarrollar la versión Python 3.X? Debido a que Python se ha desarrollado durante más de 20 años, hay muchas funciones y módulos repetidos y muchos códigos se han vuelto menos concisos, por lo que Guido decidió llevar a cabo una actualización exhaustiva de la versión X.
gramática básica
elementos gramaticales básicos
sangría y comentarios
-
sangría
En los lenguajes java y c/c++, "{ }" se utiliza para representar un bloque de código.
Python usa sangría (espacios, preferiblemente 4 espacios) para representar bloques de código, no es necesario usar llaves {}, y varias declaraciones consecutivas con la misma cantidad de sangría constituyen un bloque de código.
La cantidad de espacios sangrados es variable, pero las declaraciones en el mismo bloque de código deben contener la misma cantidad de espacios sangrados .
Por ejemplo: declaraciones como if, for, while, def y class usan bloques de código. Por lo general, dos puntos al final de una declaración representan el comienzo de un bloque de código, como en el siguiente ejemplo:
if x>0: y=1 else: y=-1 # 注意:同一个代码块中的语句,其缩进量应相同,否则会出现 indentationError (缩进错误)异常。
-
nota
Agregue declaraciones descriptivas a los programas para ayudar a los programadores a leer y comprender el código.
- Comentario de una sola línea: # contenido del comentario
- Comentario de varias líneas: """ contenido del comentario """ o ''' contenido del comentario'''
Carácter de continuación de declaración (\) y separador de declaración (;)
-
Símbolo de continuación de declaración ( \ )
Por lo general, una declaración en Python ocupa una línea y no hay un símbolo de fin de declaración. Cuando la declaración es larga, puede usar la barra invertida (\) para lograr una declaración de varias líneas.
Nota: Después del símbolo ( \ ), no puede haber otros símbolos, incluidos espacios y comentarios.
-
separador de declaraciones ( ; )
Varias declaraciones separadas por un delimitador de declaración se pueden considerar como una declaración compuesta, y Python permite escribir declaraciones individuales o declaraciones compuestas después de los dos puntos.
Palabras reservadas y palabras clave
-
Las palabras reservadas son palabras reservadas en el lenguaje de programación para su uso después de las actualizaciones de versión.
Las palabras clave son palabras en un lenguaje de programación que son comandos o constantes.
-
Aviso:
- No se permiten palabras reservadas ni palabras clave como variables u otros identificadores.
- Python distingue entre mayúsculas y minúsculas para los identificadores, y las palabras reservadas y las palabras clave deben distinguir estrictamente entre mayúsculas y minúsculas.
El significado y función de las 35 palabras reservadas en Python 3.7.2
número de serie | palabra reservada | ilustrar |
---|---|---|
1 | y | Operación lógica AND, utilizada para operaciones de expresión |
2 | como | Se utiliza para convertir tipos de datos. |
3 | afirmar | Se utiliza para juzgar el resultado de una variable o expresión condicional. |
4 | asíncrono | Se utiliza para habilitar operaciones asincrónicas. |
5 | esperar | Se utiliza en operaciones asincrónicas para esperar a que regresen las corrutinas. |
6 | romper | Interrumpir la ejecución de la declaración de bucle |
7 | clase | definir clase |
8 | continuar | continuar con el siguiente bucle |
9 | definición | definir una función o método |
10 | del | eliminar el valor de una variable o secuencia |
11 | elif | Declaración condicional, utilizada junto con if y else |
12 | demás | Declaración condicional, usada junto con if, else; también se puede usar con excepciones o declaraciones en bucle |
13 | excepto | Contiene el bloque de código de procesamiento después de detectar la excepción, usado en combinación con try y finalmente |
14 | FALSO | valor lógico que significa "falso" |
15 | finalmente | Contiene un bloque de código al que siempre se llama después de detectar una excepción, usado junto con try y except. |
dieciséis | para | declaración de bucle |
17 | de | Se utiliza para importar módulos, se utiliza junto con la importación. |
18 | global | Para usar variables globales en funciones u otros ámbitos locales |
19 | si | Declaración condicional, utilizada en combinación con elif y else |
20 | importar | Importar módulos, utilizados junto con from |
21 | en | Determinar si una variable está en una secuencia |
22 | es | Determinar si una variable es una instancia de una clase. |
23 | lambda | definir función anónima |
24 | Ninguno | Representa un objeto vacío o un valor nulo especial. |
25 | no local | Se utiliza para utilizar variables externas (no globales) en funciones u otros ámbitos. |
26 | no | Operación lógica NOT, utilizada para operaciones de expresión |
27 | o | Lógico u operación, utilizado para operación de expresión. |
28 | aprobar | marcador de posición para una clase, método o función vacía |
29 | aumentar | solía lanzar una excepción |
30 | devolver | devuelve el resultado de un cálculo de una función |
31 | Verdadero | Un valor lógico que significa "verdadero" |
32 | intentar | Código de ejecución de prueba que puede ser anormal, usado en combinación con excepto, finalmente |
33 | mientras | declaración de bucle |
34 | con | Simplifique las declaraciones de Python |
35 | producir | devolver valores de funciones a su vez |