Articles of tubo de

Expresando pandas subconjunto utilizando tubería.

Tengo un dataframe que subcontrato de esta manera: abxy 0 1 2 3 -1 1 2 4 6 -2 2 3 6 6 -3 3 4 8 3 -4 df = df[(df.a >= 2) & (df.b <= 8)] df = df.groupby(df.x).mean() ¿Cómo expreso esto usando el operador de tubería pandas? df = (df .pipe((xa > […]

Ejecutando subproceso python a través de git hook

Estoy ejecutando Gitolite sobre el repository de Git y tengo un enlace de post-recepción escrito en Python. Necesito ejecutar el comando “git” en el directorio del repository de git. Hay pocas líneas de código: proc = subprocess.Popen([‘git’, ‘log’, ‘-n1′], cwd=’/home/git/repos/testing.git’ stdout=subprocess.PIPE, stderr=subprocess.PIPE) proc.communicate() Después de hacer un nuevo compromiso y empujar al repository, los scripts […]

No locking de lectura en os.pipe en Windows

Esta pregunta: ¿Cómo leer desde un os.pipe () sin ser bloqueado? – muestra una solución sobre cómo verificar si os.pipe tiene datos para Linux, y para esto necesita poner la canalización en modo no bloqueante: import os, fcntl fcntl.fcntl(thePipe, fcntl.F_SETFL, os.O_NONBLOCK) En Windows tenemos esto: ImportError: No module named fcntl Pero os.pipe está allí: >>> […]

El script de Python canalizado toma el 100% de la CPU cuando se lee de una tubería rota

Tengo dos scripts de Python que se ejecutan en una máquina Ubuntu Linux. El primero envía toda su salida a stdout, el segundo lee desde stdin. Están conectados por una tubería simple, es decir, algo como esto: ./step1.py | ./step2.py Lo que hace step2 es que lee líneas de entrada en un bucle infinito y […]

¿Hay una manera de sondear un identificador de archivo devuelto desde subprocess.Popen?

Di que escribo esto: from subprocessing import Popen, STDOUT, PIPE p = Popen([“myproc”], stderr=STDOUT, stdout=PIPE) Ahora si lo hago line = p.stdout.readline() mi progtwig espera hasta que el subproceso emita la siguiente línea. ¿Hay alguna magia que pueda hacer para p.stdout para poder leer la salida si está allí, pero continuar de otra manera? Estoy […]

Los subprocesos de Python experimentan un retraso misterioso en la recepción de EOF estándar

Reduje un problema que estaba viendo en mi solicitud al siguiente caso de prueba. En este código, un proceso principal genera simultáneamente 2 (puede generar más) subprocesos que leen un gran mensaje del padre sobre la entrada estándar, duermen durante 5 segundos y escriben algo. Sin embargo, en algún lugar ocurre una espera inesperada, lo […]

Los resultados de Piping to Head en una tubería rota en shell shell desde Python

Tengo un comando que ejecutaría para generar una cadena aleatoria: var=`< /dev/urandom tr -dc _A-Zaz-0-9 | head -c8` Cuando ejecuto este comando en una sesión de bash interactiva no obtengo ningún error. Pero cuando pongo este comando en el script y lo ejecuto como un script, aparece el error Broken pipe indicado por tr. He […]

transmisión de datos en el comando con subprocess.Popen

Con frecuencia necesito ordenar una colección de archivos que contienen encabezados. Debido a que la clasificación depende del contenido del encabezado, este caso de uso es más complicado que las preguntas similares (por ejemplo, ¿Hay alguna forma de ignorar las líneas de encabezado en una clasificación UNIX? ). Tenía la esperanza de usar Python para […]

¿Cómo obtener datos de la línea de comandos desde un progtwig Python?

Quiero ejecutar un progtwig de línea de comandos desde un script de Python y obtener el resultado. ¿Cómo obtengo la información que muestra foo para poder usarla en mi script? Por ejemplo, llamo foo file1 desde la línea de comandos y se imprime Size: 3KB Name: file1.txt Other stuff: blah ¿Cómo puedo obtener el nombre […]

Cómo usar Subproceso en Windows

Estoy intentando guardar el resultado o la función runcmd en la variable Resultado . Esto es lo que he intentado: importar subproceso def runcmd(cmd): x = subprocess.Popen(cmd, stdout=subprocess.PIPE) Result = x.communicate(stdout) return Result runcmd(“dir”) Cuando ejecuto este código, obtengo este resultado: Traceback (most recent call last): File “C:\Python27\MyPython\MyCode.py”, line 7, in runcmd(“dir”) File “C:\Python27\MyPython\MyCode.py”, line […]