Articles of python 2.x

listdir no imprime letras que no estén en inglés correctamente

En Python 2.7, for dir in os.listdir(“E:/Library/Documents/Old – Archives/Case”): print dir imprime: Danny.xlsx Dannyh.xlsx ~$??? ?? ?????? ??? ???? ???????.docx mientras esto: # using a unicode literal for dir in os.listdir(u”E:/Library/Documents/Old – Archives/Case”): print dir imprime: Dan.xlsx Dann.xlsx Traceback (most recent call last): File “E:\…\FirstModule.py”, line 31, in print dir File “C:\Python27\lib\encodings\cp1252.py”, line 12, in […]

¿Cuál es el número más grande que puede manejar la clase decimal?

Mi progtwig calcula la constante matemática e , que es irracional. Para hacer esto, necesitaba obtener factorials de números muy grandes. int no puede manejar números mayores de 170 !. (Descubrí que la calculadora de Google más grande que puede manejar es 170.654259, pero no estoy seguro de cómo se puede descomponer en factores no […]

Procesos de fondo asíncronos con web2py.

Necesito manejar un gran proceso (que consume tiempo y memoria) de forma asíncrona en una aplicación web2py llamada dentro de un método de controlador. Mi caso de uso específico es llamar a un proceso a través de stdlib.subprocess y esperar a que salga sin bloquear el servidor web, pero estoy abierto a métodos alternativos. Los […]

¿Por qué no puedo usar `import * en una función?

Esto funciona como se esperaba def outer_func(): from time import * print time() outer_func() Puedo definir funciones anidadas en la multa de contexto y llamarlas desde otras funciones anidadas: def outer_func(): def time(): return ‘123456’ def inner_func(): print time() inner_func() outer_func() Incluso puedo importar funciones individuales: def outer_func(): from time import time def inner_func(): print […]

¿Puede un __future__ importar … garantizar Python 2 y 3?

No estoy interesado en calentar el “Python 2 o Python 3?” preguntas (aunque la más reciente que encontré tiene más de un año), pero me topé con esta afirmación : Puedes escribir el código de Python 3 debajo de Python 2 si tu archivo comienza con la línea: from __future__ import absolute_import, division, generators, unicode_literals, […]

Devolviendo los primeros N caracteres de una cadena Unicode

Tengo una cadena en Unicode y necesito devolver los primeros N caracteres. Yo estoy haciendo esto: result = unistring[:5] pero, por supuesto, la longitud de las cadenas de Unicode! = longitud de los caracteres. ¿Algunas ideas? La única solución es usar re? Editar: Más información unistring = “Μεταλλικα” #Metallica written in Greek letters result = […]

bytes vs bytearray en Python 2.6 y 3

Estoy experimentando con bytes contra bytearray en Python 2.6. No entiendo la razón de algunas diferencias. Un iterador de bytes devuelve cadenas: for i in bytes(b”hi”): print(type(i)) Da: Pero un iterador bytearray devuelve int s: for i in bytearray(b”hi”): print(type(i)) Da: ¿Por qué la diferencia? Me gustaría escribir código que se traduzca bien en Python […]

Lectura de datos en ruso de CSV

Tengo algunos datos en el archivo CSV que están en ruso: 2-комнатная квартира РДТ’, мкр Тастак-3, Аносова — Толе би;Алматы 2-комнатная квартира БГР’, мкр Таугуль, Дулати (Навои) — Токтабаева;Алматы 2-комнатная квартира ЦФМ’, мкр Тастак-2, Тлендиева — Райымбека;Алматы Delimitador es ; símbolo. Quiero leer datos y ponerlos en un array. Intenté leer estos datos usando este […]

implementar singleton con metaclase

El código a continuación es cómo implemento Singleton con metaclass, y funciona bien. class Test_MetaClass(type): def __init__(cls, name, bases, dict): super(Test_MetaClass, cls).__init__(cls, bases, dict) cls._instance = None print ‘Test_MetaClass __init__’ def __call__(cls, *args, **kwargs): if cls._instance is None: cls._instance = super(Test_MetaClass, cls).__call__(*args, **kwargs) print ‘Test_MetaClass __call__’ return cls._instance class A(object): __metaclass__ = Test_MetaClass def __init__(self): […]

Cómo decodificar una cadena ASCII con códigos de barra invertida x \ x

Estoy tratando de decodificar de un texto en portugués de Brasil: ‘Demais Subfun \ xc3 \ xa7 \ xc3 \ xb5es 12’ Debería ser ‘Demais Subfunções 12’ >> a.decode(‘unicode_escape’) >> a.encode(‘unicode_escape’) >> a.decode(‘ascii’) >> a.encode(‘ascii’) todos dan: UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xc3 in position 13: ordinal not in range(128) Por otro lado esto […]