Notas de estudio de Python (CSDN) - 1 - Introducción a Python

Siga los cursos sobre CSDN para aprender, Introducción a Python-Conocimientos preliminares-Árbol de habilidades de entrada a CSDNPython 

Primero, aquí hay un mapa mental de este curso:


Tabla de contenido

 1.Definición de Python

2 Historia del desarrollo de Python

2.1 Desarrollo de Python

2.2 Actualización de la versión de Python

2.3 La diferencia entre Python2.0 y Python3.0

3 Proceso de compilación y ejecución de Python

3.1 intérprete de Python

3.2 Tipos de intérpretes de Python

3.3 Código de bytes de Python (.pyc)

3.4 Máquina virtual Python

4 aplicaciones de Python

5 características de Python

6 ventajas de Python


 1.Definición de Python

Python es un lenguaje de programación fácil de aprender que combina secuencias de comandos interpretadas, compiladas, interactivas y orientadas a objetos . Python proporciona estructuras de datos de alto nivel, su sintaxis, escritura dinámica y capacidad de interpretación lo convierten en el lenguaje de programación elegido por los desarrolladores.

  • Python es un lenguaje interpretado:  no hay ninguna parte de compilación en el proceso de desarrollo. Similar a los lenguajes PHP y Perl.

  • Python es un lenguaje interactivo:  el código se puede ejecutar directamente después de un mensaje de Python >>>.

  • Python es un lenguaje orientado a objetos:  Python admite un estilo o técnica de programación orientada a objetos donde el código se encapsula en objetos.

2 Historia del desarrollo de Python

2.1 Desarrollo de Python

El fundador de Python es Guido van Rossum . En 1989, para acabar con el aburrimiento de la Navidad, Guido decidió desarrollar un nuevo intérprete de guión heredado del lenguaje ABC.

2.2 Actualización de la versión de Python

 La última versión de Python ha llegado a la 3.10.6 (2022.8.15)

Descargar Python | Python.org

2.3 La diferencia entre Python2.0 y Python3.0

  • Aspecto de salida

Python2.0 utiliza la palabra clave print para la salida, como por ejemplo: imprimir "Hola";

Python3.0 usa la función print(), como por ejemplo: print("Hola").

  • Aspecto de entrada

Python2.0 usa la función raw_input(), por ejemplo: name=raw_input("Ingrese su nombre:");

Python3.0 usa la función input(), como por ejemplo: name=input("Ingrese su nombre:").

  • Formato de codificación de cadenas

Python2.0 usa codificación ASCII de forma predeterminada para codificar la cadena de entrada;

Python3.0 usa codificación Unicode para codificar cadenas de forma predeterminada.

  • Cómo formatear cadenas

Python2.0 utiliza % marcadores de posición para generar cadenas en un formato estandarizado, como: "Hola,%s" % ("Mundo");

Python3.0 usa la función format(), como: "Hola,{}".format("Mundo").

  • Formato de codificación del archivo fuente

Python2.0 usa ASCII de forma predeterminada, por lo que cuando use chino, agregue una línea de comentarios al comienzo del archivo fuente: # - - codificación: utf-8 - -;

Python3.0 usa utf-8 de forma predeterminada.

  • tipo de datos

Python2.0 tiene tipos de enteros largos e int

Python3.0 solo tiene tipo entero int

  • Especificaciones del código

El código fuente de Python 2.0 no está estandarizado y hay muchos códigos duplicados

El código fuente de Python 3.0 es optimizado, hermoso y elegante.

3 Proceso de compilación y ejecución de Python

Aunque los archivos de código fuente de Python (.py) se pueden ejecutar directamente usando los comandos de Python, Python en realidad no interpreta directamente el código fuente de Python, tiene un proceso de compilación y ejecución, el proceso específico es el siguiente:

Primero, el código fuente de Python (archivo .py) se compila para generar el código de bytes de Python (código de bytes de Python, la extensión del archivo de código de bytes es generalmente .pyc) y luego lo ejecuta la máquina virtual Python (PVM para abreviar). y finalmente generar los resultados de la ejecución en la terminal.

A través del proceso de compilación y ejecución anterior, se puede analizar: Python es un lenguaje interpretado, que se refiere a la interpretación del código de bytes de Python en lugar del código fuente de Python . La idea básica de este mecanismo es coherente con Java y .NET.

3.1 intérprete de Python

El intérprete de Python ( Intérprete ) traduce el lenguaje Python en instrucciones de máquina que la CPU de la computadora puede entender.

Ese es el Python que instalamos y usamos.

3.2 Tipos de intérpretes de Python

  • Cpython : Desarrollado en lenguaje C, ejecutar Python bajo la línea de comando inicia el intérprete de Cpython.El python2.7 descargado oficialmente es Cpython. Cpython usa >>> como mensaje.
  • Ipython : Un intérprete interactivo basado en CPython, es decir, IPython solo se mejora en modo interactivo, pero la función de ejecutar código Python es exactamente la misma que CPython. IPython usa In [número de serie]: como mensaje.
  • PyPy : dirigido principalmente a la velocidad de ejecución. Utilice la tecnología JIT para compilar dinámicamente código Python. La mayor parte del código Python se puede ejecutar en PyPy.
  • Jpython : un intérprete de Python que se ejecuta en la plataforma Java y puede compilar directamente el código Python en el código de bytes de Java para su ejecución.
  • IronPython : un intérprete de Python que se ejecuta en la plataforma Microsoft .Net y puede compilar directamente código Python en código de bytes .Net.
  • Boost.Python : permite que las bibliotecas de clases Python y C++ se llamen entre sí (.pyc).

3.3 Código de bytes de Python (.pyc)

El código de bytes en Python es un tipo de datos y el resultado compilado del código Python es un objeto de código de bytes. La máquina virtual puede cargar el objeto de código de bytes y ejecutarlo directamente, y el archivo pyc es la forma de código de bytes guardada en el disco duro.

Si hay un archivo test.py que necesita ser ejecutado, primero generará un archivo .pyc. Generalmente, las situaciones posibles son las siguientes:

  1. La ejecución de python test.py compilará test.py en código de bytes y lo interpretará para su ejecución, pero test.pyc no se generará.
  2. Si se cargan otros módulos en test.py, como import urllib2, Python compilará urllib2.py en código de bytes, generará urllib2.pyc y luego interpretará y ejecutará el código de bytes.
  3. Si desea generar test.pyc, puede usar el módulo integrado de Python py_compile para compilarlo , o puede ejecutar el comando para generar test.pyc. python -m py_compile test.py 
  4. Al cargar un módulo, si existen tanto .py como .pyc, Python se ejecutará usando .pyc. Si el tiempo de compilación de .pyc es anterior al tiempo de .py, el archivo .py se volverá a compilar y el archivo .pyc estar actualizado.

3.4 Máquina virtual Python

Python no compila el archivo py en código de máquina para ejecutarlo, sino que la máquina virtual de Python interpreta y ejecuta las declaraciones py una por una. El método de ejecución de la máquina virtual de Python es imitar el método de ejecución de los archivos ejecutables x86 normales.

La entrada de la máquina virtual es un archivo .pyc de código de bytes, el cargador de archivos de código de bytes carga el archivo .pyc binario en la memoria, es interpretado y ejecutado por el motor de ejecución, y la salida es el resultado de la ejecución del archivo de código de bytes.

4 aplicaciones de Python

Las aplicaciones de Python incluyen principalmente las siguientes áreas:

  • Operación y mantenimiento de Linux/UNIX: proporciona API (interfaz de programación de aplicaciones) para facilitar el mantenimiento y la gestión del sistema.
  • Desarrollo de programas GUI (PyQt, Kivy, etc.)
  • Desarrollo de programas web (Django, Flask y otros frameworks): soporta la última tecnología XML.
  • Desarrollo de aplicaciones móviles (PyQt, Kivy, etc.): el módulo PyOpenGL de Python encapsula la "interfaz de programación de aplicaciones OpenGL" y puede realizar procesamiento de imágenes bidimensionales y tridimensionales. El módulo PyGame se puede utilizar para escribir software de juegos.
  • Rastreador web (que proporciona fuentes de datos para motores de búsqueda, aprendizaje profundo y otros campos)
  • Programación de red (basada en protocolos como Socket): proporciona una gran cantidad de módulos para admitir la programación de sockets, que pueden desarrollar fácil y rápidamente aplicaciones distribuidas. Muchos proyectos de desarrollo de software a gran escala, como Zope, Mnet y BitTorrent, Google lo están utilizando ampliamente.
  • Procesamiento de gráficos: es compatible con bibliotecas de gráficos como PIL y Tkinter, que pueden facilitar el procesamiento de gráficos.
  • 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.
  • Programación de bases de datos: Puede comunicarse con Microsoft SQL Server, Oracle, Sybase, DB2, Mysql, SQLite y otras bases de datos a través de módulos que siguen la especificación Python DB-API (Interfaz de programación de aplicaciones de bases de datos). Python viene con un módulo Gadfly, que proporciona un entorno SQL completo.
  • Ciencia de datos: las extensiones NumPy proporcionan interfaces amplias para muchas bibliotecas matemáticas estándar. Aprendizaje automático (scikit-learn, marco TensorFlow), análisis y visualización estadística de datos (Matplotlib, marco seaborn).

5 características de Python

  • Fácil de leer y aprender : Python es un lenguaje muy simple con un estilo claro y sangría forzada. Python tiene una sintaxis simple y es extremadamente fácil de comenzar.
  • Gratis y de código abierto : Python es un software gratuito/de código abierto. Puede modificar y utilizar su código fuente usted mismo.
  • Portabilidad : Python se puede portar a muchas plataformas. Las plataformas más utilizadas incluyen Linux, Windows, VxWorks, PlayStation, Windows CE, PocketPC, etc.
  • Interpretabilidad : El intérprete de Python convierte el código fuente en código de bytes y luego lo traduce al lenguaje de máquina utilizado por la computadora y lo ejecuta, es decir, no es necesario compilar el código Python antes de ejecutarlo.
  • Orientado a objetos : Python admite la programación orientada a objetos. Los programas definen clases mediante composición y herencia.
  • Escalabilidad : si necesita que una pieza crítica de código se ejecute más rápido o desea que algunos algoritmos no se hagan públicos, puede escribir parte del programa en C o C++ y luego llamarlo en el programa Python.
  • Integrabilidad : Python se puede integrar en programas C/C++ para proporcionar funcionalidad de secuencias de comandos a los usuarios del programa.
  • Línea de comando interactiva : Python se puede ejecutar en una traducción literal de un solo paso y el código se puede ejecutar directamente después de un mensaje de Python >>>.
  • Biblioteca estándar enriquecida : la biblioteca estándar de Python incluye procesamiento de cadenas (diccionario, división de matrices, reexpresión regular), generación de documentos, subprocesos múltiples, serialización, base de datos, análisis HTML/XML (BeautifulSoup, Expat), pruebas unitarias (PyUnit), versión de código. control (PySVN), archivos WAV, control de red (urllib2), criptosistema, GUI (interfaz gráfica de usuario, PyQt), módulos gráficos (Tkinter, PyTCL, WxPython), etc. Además de la biblioteca estándar, existen muchas otras bibliotecas de alta calidad, como wxPython, Twisted y la biblioteca de imágenes de Python, entre otras.
  • Estandarización : el uso de sangría forzada hace que el código sea más legible y reduce la confusión visual.
  • Lenguaje adhesivo : Python se utiliza a menudo como lenguaje adhesivo para "pegar" programas escritos en diferentes idiomas. Boost.Python permite que las bibliotecas de clases de Python y C++ se llamen entre sí (.pyc); Jpython es Python implementado en Java y ambas bibliotecas de clases se pueden usar al mismo tiempo; Ironpython es la versión de Python en la plataforma .NET.

6 ventajas de Python

  • Fácil de aprender, ideal para principiantes pero también para expertos.
  • Altamente escalable, adecuado para proyectos grandes o pequeños programas únicos (llamados scripts)
  • Portátil, multiplataforma
  • Incrustable (haciendo que ArcGIS sea programable)
  • estable y maduro
  • Gran comunidad de usuarios

Supongo que te gusta

Origin blog.csdn.net/weixin_44362628/article/details/126352061
Recomendado
Clasificación