Articles of argumentos de

Python pasando diccionario para procesar en multiprocesamiento

Tengo una clase que contiene un número (grande) de propiedades diferentes, incluidos algunos diccionarios. Cuando paso una instancia de la clase a un nuevo proceso, todos los valores numéricos parecen pasar correctamente, pero todos los diccionarios que estaban en el objeto de clase se vacían. Aquí hay una prueba simple que cociné que demuestra mi […]

¿Cómo recuperar el orden original de los argumentos de palabras clave pasados ​​a una llamada de función?

Recuperar el orden de los argumentos de palabras clave pasados ​​por ** kwargs sería extremadamente útil en el proyecto en particular en el que estoy trabajando. Se trata de hacer una especie de matriz de número nd con dimensiones significativas (ahora llamada dimarray), particularmente útil para el manejo de datos geofísicos. Por ahora digamos que […]

Python: ¿Cuál es la diferencia entre Call-by-Value y Call-by-Object?

Mucha gente dice que en Python los argumentos a las funciones se pasan usando un modelo de llamada por valor. Como lo entiendo, en realidad no es un lenguaje de llamada por valor, sino un modelo de llamada por objeto o llamada por compartir. ¿Cuáles son las diferencias entre un modelo de llamada por valor […]

Deshabilitar / eliminar argumento en argparse

¿Es posible eliminar o deshabilitar un argumento en argparse, de manera que no se muestre en la ayuda? ¿Cómo? Es fácil agregar nuevos argumentos: parser = argparse.ArgumentParser() parser.add_argument(‘–arg1′, help=’Argument 1’) parser.add_argument(‘–arg2′, help=’A second one’) Y sé que puede anular los argumentos con una nueva definición especificando el controlador de conflicto “resolver”: #In one script that […]

llamando a rsync desde python subprocess.call

Estoy intentando ejecutar rsync over ssh desde un subproceso en un script de python para copiar imágenes de un servidor a otro. Tengo una función definida como: def rsyncBookContent(bookIds, serverEnv): bookPaths = “” if len(bookIds) > 1: bookPaths = “{” + “,”.join((“book_”+str(x)) for x in bookIds) + “}” else: bookPaths = “book_” + str(bookIds[0]) for […]

Separe la parte real e imaginaria de un número complejo en Python

Tengo que extraer los elementos reales e imaginarios de un número complejo en Python. Sé cómo hacer una lista en un número complejo … pero no al revés. Tengo esto: Y = (-5.79829066331+4.55640490659j) Necesito: Z = (-5.79829066331, 4.55640490659) y también necesitaré cada parte si hay una manera de ir directamente sin pasar por Z: A […]

argumento argparse

Tengo un pequeño problema. Utilizo argparse para analizar mis argumentos, y está funcionando muy bien. Para tener los argumentos, yo hago: p_args = parser.parse_args(argv) args = dict(p_args._get_kwargs()) Pero el problema con p_args es que no sé cómo ordenar estos argumentos por su posición en la línea de comando, porque es un dict. Entonces, ¿hay alguna […]

Dependencias de Python entre grupos usando argparse.

Comencé a aprender Python, y ahora estoy aprendiendo los grandes beneficios de argparse . Usando argparse , he creado dos grupos de argumentos: group_list y group_simulate . Cada uno de los grupos tiene sus propios argumentos: el usuario puede especificar solo un argumento en cada grupo (logrado usando parser.add_mutually_exclusive_group() ). Y ahora mi objective es […]

Cómo se pasan los argumentos a una función a través de __getattr__

Considere el siguiente ejemplo de código (python 2.7): class Parent: def __init__(self, child): self.child = child def __getattr__(self, attr): print(“Calling __getattr__: “+attr) if hasattr(self.child, attr): return getattr(self.child, attr) else: raise AttributeError(attr) class Child: def make_statement(self, age=10): print(“I am an instance of Child with age “+str(age)) kid = Child() person = Parent(kid) kid.make_statement(5) person.make_statement(20) se puede […]

Argumentos de cadena en multiproceso python

Estoy tratando de pasar un argumento de cadena a una función de destino en un proceso. De alguna manera, la cadena se interpreta como una lista de tantos argumentos como caracteres hay. Este es el código: import multiprocessing def write(s): print s write(‘hello’) p = multiprocessing.Process(target=write, args=(‘hello’)) p.start() Obtengo esta salida: hello Process Process-1: Traceback […]