Herramientas de usuario

Herramientas del sitio


script:python:xtra2

¡Esta es una revisión vieja del documento!


Xtra (Python) 2

Nuevos conceptos

Reflection

# sin reflection:
Foo().hello()
 
# con reflection:
getattr(globals()['Foo'](), 'hello')()

Logging

Pequeñas librerías

PyYAML

Para parsear documentos YAML.

Uso

Agregaremos la librería.

import yaml

Cargar un texto yaml:

print yaml.load("""
name: Vorlin Laruknuzum
sex: Male
class: Priest
title: Acolyte
hp: [32, 71]
sp: [1, 13]
gold: 423
inventory:
- a Holy Book of Prayers (Words of Wisdom)
- an Azure Potion of Cure Light Wounds
- a Silver Wand of Wonder
""")

Crear un texto yaml:

print yaml.dump({'name': "The Cloak 'Colluin'", 'depth': 5, 'rarity': 45, 'weight': 10, 'cost': 50000, 'flags': ['INT', 'WIS', 'SPEED', 'STEALTH']})

Notas

  • Para instalar, en el directorio:
$ sudo python setup.py install

Scripting

In a nutshell

Básico

  • Recoger parámetros pasados en la ejecución:
for arg in sys.argv:
    print arg
  • Recoger lo introducido por consola:
value = raw_input("Sure?")

Strings

  • Saber la longitud:
len(str)
  • Concatenar:
path = path + os.sep
  • Saber el último carácter:
path[len(path) - 1:]
  • Formato:
"La capital de %s es %s" % ("Araba", "Gasteiz")  # 'La capital de Araba es Gasteiz'
"%s tiene %d provincias y %4d habitantes" % ("Araba", 1, 100)  # 'Gasteiz tiene 1 provincias y 0100 habitantes'
"Cada uno con %.2f ojos" % (2.5457)  # 'Cada uno con 2.54 ojos'

Utilidades con ficheros y directorios

  • Eliminar un directorio:
shutil.rmtree(path)
  • Crear directorio:
os.mkdir(path)
  • Saber el separador de directorios:
os.sep
  • Copiar un directorio:
shutil.copytree(src, dst)

Utilidades con webs

Utilidades con imágenes

Notas

Utilidades

easy_install

Es un gestor de paquetes para Python. Permite instalar librerías de una forma muy sencilla. Para instalarlo simplemente haremos:

wget http://peak.telecommunity.com/dist/ez_setup.py
sudo python ez_setup.py

A partir de entonces podremos instalar los paquetes con simplemente poner el nombre (esto hará que lo busque en el repositorio PyPi, lo baje y lo instale]]:

easy_install SQLObject

O a partir de una ruta, de un .tgz, de un .egg…

easy_install http://example.com/path/to/MyPackage-1.2.3.tgz
easy_install .

Usar una librería sin instalarla

script/python/xtra2.1312829659.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)