Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
f1:python [2020/11/26 14:21] lmachucaf1:python [2025/03/20 14:08] (actual) lmachuca
Línea 6: Línea 6:
  
   * Python Documentation:  https://docs.python.org/   * Python Documentation:  https://docs.python.org/
-  * Python 2.7/Legacy: https://docs.python.org/2/ 
   * pip Package Manager: https://pypi.org/project/pip/   * pip Package Manager: https://pypi.org/project/pip/
   * wxWidgets (interface gráfica) con Python: [[wp>es:wxPython]] , https://pythonspot.com/tag/wxwidgets/   * wxWidgets (interface gráfica) con Python: [[wp>es:wxPython]] , https://pythonspot.com/tag/wxwidgets/
Línea 13: Línea 12:
   * Python Best Practices: https://realpython.com/tutorials/best-practices/   * Python Best Practices: https://realpython.com/tutorials/best-practices/
  
-=====Instalar===== +===== Instalación Linux =====
-Para instalar **Python** en sí en un equipo depende de la configuración del sistema operativo:+
  
-  * **Linux**:  +La instalación para Linux cubre el caso de distribuciones Debian, Ubuntu y similar
-    * Python 3.x ya viene nativo, ¿no es genial? Verificar con \\ <code bash>python3 --version</code> +
-    * Python 2.7 suele estar disponible. Verificar con \\ <code bash>python2 --version</code> +
-    * En general se puede instalar con el gestor de paquetespor ejemplo en Debian/Ubuntu: \\ <code bash>apt-get install python2 python3</code> +
-    * La mayoría de las distribuciones de Linux distinguen entre Python 2 Python 3, por ejemplo con los intérpretes de shell ''python2'' y ''python3'' en vez de sólo ''python''+
-  * **Windows**: Existen varias alternativas para instalar Python. Entre las más notables se puede destacar: +
-    * [[https://www.python.org/downloads/windows/|Python for Windows]] (recomendado) +
-    * [[http://www.cygwin.org/|Cygwin]] con Python  +
-    * [[https://sourceforge.net/projects/winpython/files/WinPython_2.7/|WinPython]] +
-    * Active Python +
-  * Windows XP: Ojo, La última versión de Python for Windows soportada en Windows XP es [[https://www.python.org/downloads/release/python-279/|2.7.9]], y la última versión de Cygwin soportada en Windows XP es 3.3 sin SSL. +
-  * Android: Es posible instalar una versión reducida de Python por medio de [[https://www.atareao.es/software/utilidades/terminal-para-android/|Termux (en F-Droid)]].+
  
-<note>Algunos de estos instaladores se encuentran [[:Transferencias de Archivos|en el SFTP de Helpcom]] en la carpeta de Archivos/Desarrollo.</note>+La mayoría de las distribuciones ya viene con Python 3.x. La versión de Python depende de la distribución, suele ser desde Python 3.6 (Ubuntu 2018) en adelante. :!: Es importante **nunca** seguir tutoriales de internet que instalan una versión diferente de Python y **cambian la versión del sistema**, ya que en distribuciones Debian y RedHat, componentes como la administración de paquetes dependen de Python.
  
-=====Gestor de Dependencias=====+El ejecutable de Python suele ser ''/usr/bin/python'' o ''/usr/bin/python3''.
  
-**''pip''** es el gestor de paquetes integrado para Python, permite instalar paquetes y módulos en modo usuario además de (en Linux) integrar las instalaciones disponibles con el gestor de paquetes.+Para instalar otra versión de Python, se recomienda [[https://github.com/pyenv/pyenv#installation|instalar pyenv por cualquiera de sus métodos oficiales]]. Este proceso debe realizarse con la cuenta normal de usuario, y creará un árbol de directorios para almacenar distintas versiones de Python (cada una con su propia paquetería) en una ruta indicada por el usuario.
  
-Para instalar pip se utiliza el comando ''apt-get install pip python-virtualenv''. El comando se llama ''pip'' para Python 3 ''pip2'' para Python 2.+Algunas distribuciones viejas de Linux pueden venir con un intérprete ''/usr/bin/python'' ''/usr/bin/python2'' de **Python 2 por defecto**, aún cuando soportan Python 3. Para configurar Python 3 como el intérprete ''/usr/bin/python'' por defecto, se puede instalar un paquete que realiza esta notificación dependiendo de la distribución:
  
-El gestor de paquetes pip funciona creando una base de datos local con paquetes y permisos para cada usuario; por tanto, para instalar paquetes para un proyecto siempre debe hacerse de manera local como el usuario del proyecto y con la opción ''--user''; **nunca** como ''root''.+  apt install python-is-python3
  
-Para instalar un módulo se puede invocar pip con la opción ''%%--user%%''. 
  
-<code bash> +===== Instalación Windows =====
-usuario $  pip install --user sqlite mysql pgsql +
-usuario $  pip install --user configparser +
-</code>+
  
-=====Tópicos =====+Existen varias alternativas para instalar Python en Windows. Entre las más notables se puede destacar:
  
-Los tres proyectos de software más relevantes en Helpcom que dependen de Python son [[f1:respaldarv2]] para respaldar bases de datos, los respaldos automáticos de Facturación Electrónica, y los [[trébol:|respaldos nube de Trébol en Amazon]].+  * [[https://www.python.org/downloads/windows/|Python for Windows]] (recomendado). 
 +  * [[http://www.cygwin.org/|Cygwin]] con Python . 
 +  * [[https://sourceforge.net/projects/winpython/files/|WinPython]]
 +  * Active Python . 
 +  * El servidor 237 de Helpcom (''soporte@helpcom.cl'') tiene copias de los instaladores de WinPython-Zero para Python 3.6 (usado por ejemplo por Transbank).
  
-{{topic>helpcom +python}}+Tomar ojo de las siguientes notas dependiendo de la versión de Windows.
  
-=====Desarrollo=====+  * Ya que se usa para levantar scripts, se recomienda instalar Python en una ruta sin espacios (por ejemplo, //Python for Windows// usualmente instala en ''c:/WinPy/3.8'' o similar). 
 +  * Para los equipos Windows con WSL2, es mejor usar el subsistema de Python integrado. 
 +  * La última versión de Python for Windows soportada en Windows XP es [[https://www.python.org/downloads/release/python-279/|2.7.9]], y la última versión de Cygwin soportada en Windows XP es 3.3 sin SSL.
  
-El entorno de desarrollo recomendado en Debian/Ubuntu para Python es [[https://wiki.python.org/moin/DrPython|DrPython]]. Eclipse también tiene un módulo que permite desarrollar en Python.+El directorio con el intérprete puede ser agregado al ''%PATH%'' si el instalador no lo hace por defecto.
  
-=====Notas=====+===== Instalación Android =====
  
-==== Pip desde Python ==== +Es posible instalar una versión miniaturizada de Python por medio de [[https://www.atareao.es/software/utilidades/terminal-para-android/|Termux (en F-Droid)]]. Ojo que empezando en Android 10esto requiere la versión de Termux en F-Droid, ya que desde Android 10 los paquetes en Google Play Store no pueden instalar complementos o tener sus propios gestores de paquetes.
-Si un ejecutable para ''pip'' no está disponible pero el módulo está instaladoes posible reemplazar el comando ''pip'' con el comando ''python'':+
  
-  # En vez de +=====Gestor de Proyectos =====
-  pip install --user modulo +
-  # Usar +
-  python -m pip install --user modulo -- +
  
 +En Python **''venv''** es el gestor de entornos y **''pip''** es el gestor de paquetes, permiten instalar paquetes y módulos en modo usuario además de (en Linux) integrar las instalaciones disponibles con el gestor de paquetes.
  
-==== Dependencias Python Directo desde Python ====+Para instalar estos sistemas en Debian se utiliza (como superusuario) el comando ''apt install python-pip python-virtualenv''. El módulo de venv se invoca con ''python -m venv''. El comando de pip se llama ''pip'' para Python 3 y ''pip2'' para Python 2.
  
-Se puede invocar ''pip'' directamente desde la consola de Python (Linux o Windows) como se puede ver en [[https://stackoverflow.com/questions/12332975/installing-python-module-within-code|(1)]]:+El gestor de paquetes pip funciona creando una base de datos local con paquetes y permisos para cada usuario; por tanto, para instalar paquetes para un proyecto siempre debe hacerse de manera local como el usuario del proyecto, o mejor ún directamente dentro del entorno creado y activado por ''venv''.
  
-<code python+Si estoy en el árbol de directorios de un proyecto, puedo crear un entorno venv para trabajar ese proyecto con un sencillo comando: 
->>> import pip + 
->>> pip.main(['install', 'configparser'])+<code bash
 +[usuario@ ~/proyecto ] $ python -m venv test 
 +[usuario@ ~/proyecto $ ls -F 
 + 
 +proyecto.py 
 +test/
 </code> </code>
  
-Ejemplo:+Para trabajar con entornos ''venv'' ejemplos de tutoriales:
  
-<file> +  * https://codificandobits.com/tutorial/como-crear-entornos-virtuales-en-python-con-venv/ 
-Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)] on win +  * https://realpython.com/python-virtual-environments-a-primer/
-32 +
-Type "help", "copyright", "credits" or "license" for more information. +
->>> import pip +
->>> pip.main(['install', 'configparser']) +
-Downloading/unpacking configparser +
-  Downloading configparser-3.5.0.tar.gz +
-  Running setup.py +
  
-Installing collected packages: configparser 
-  Running setup.py install for configparser 
  
-    Installing C:\Python27\Lib\site-packages\configparser-3.5.0-py2.7-nspkg.pth +=====Tópicos =====
-Successfully installed configparser +
-Cleaning up... +
-+
->>>+
  
-</file>+Algunos proyectos y middlewares de Helpcom están hechos en Python. Entre los más notables se puede mencionar: [[f1:respaldarv2]] para respaldar bases de datos, "pyhyzy" el middleware de captura de horas de ZKtime, y "twbalanza" el middleware para conectar y cargar PLU en balanzas Digicom con protocolo TWS.
  
-Para Python en Cygwin es posible utilizar los ejemplos en [[https://stackoverflow.com/questions/24645468/install-python-modules-in-cygwin|(2)]].+Las siguientes páginas en esta wiki están marcadas con "Python":
  
 +{{topic>helpcom +python}}
  
-==== Instalar en Windows XP ====+=====Desarrollo=====
  
-  - Descomprimir nuestro programa de respaldo en una carpeta, por ejemplo ''respdb''+El entorno de desarrollo recomendado en Debian/Ubuntu para Python es [[https://wiki.python.org/moin/DrPython|DrPython]]. Eclipse también tiene un módulo que permite desarrollar en Python.
-  - Instalar **Python for Windows 2.7.9** desde algunas de las fuentes indicadas arriba. +
-  - En las opciones de instalación asegurarse que están seleccionados todos los script (FIXME TOBEDONE agregar foto) +
-  - Instalar las herramientas de consola de MySQL desde un instalador de [[:f1:Mysql Server]] o de un MySQL Community Wizard. +
-  - Abrir una consola de CMD y llevar la terminal al directorio del entorno de Python (1) +
-  - Ejecutar ''pip.exe'' para instalar los componentes y dependencias en el entorno (2) +
-  - Si el equipo **no** tiene las herramientas de MySQL agregadas en el ''%PATH%'', \\ copiar los siguientes archivos a la misma carpeta: (3) +
  
 +=====Notas=====
  
-1: +Empezando en Python 3.4, si un ejecutable para un componente de Python con interface de ejecutable no está disponible, se puede invocar el módulo en Python directamente. Por ejemplo:
-<code cmd 1> +
-rem cambiar la ruta de Python por la que se usó al instalar el sistema +
-C: +
-cd \Python27\Tools +
-</code>+
  
-2: +<code> 
-<code cmd 2+# Con ejecutable 
-pip.exe install --user configparser+pip install --user argparse 
 +# Con Python 
 +python -m pip install --uer argparse 
 + 
 +# Con ejecutable 
 +venv miprueba activate 
 +# Con Python 
 +python -m venv miprueba activate
 </code> </code>
  
-3: + 
-<file> +Para Python en Cygwin es posible utilizar los ejemplos en [[https://stackoverflow.com/questions/24645468/install-python-modules-in-cygwin]].
-mysqldump.exe +
-mysql.exe +
-libmysql.dll +
-</file>+
  
  
f1/python.1606400468.txt.gz · Última modificación: 2020/11/26 14:21 por lmachuca
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0