def runProcess(f):
process = Process(target=f)
process.start()
return process
def runInParallel(*fns):
listRunningProcesses = [process for process in map(runProcess, fns)]
map(lambda p: p.join(), listRunningProcesses)
def a():
time.sleep(1)
print("A")
def b():
time.sleep(3)
print("B")
def c():
time.sleep(2)
print("C")
if __name__ == '__main__':
runInParallel(a, b, c)
time.sleep(4)
print("---------------------")
runInParallel(a, c, b)
time.sleep(4)
print("---------------------")
runInParallel(b, a, c)
time.sleep(4)
print("---------------------")
runInParallel(b, c, a)
time.sleep(4)
print("---------------------")
runInParallel(c, a, b)
time.sleep(4)
print("---------------------")
runInParallel(c, b, a)
como correr cualquier codigo en parallelo, esta mal en algo?
#693 Para empezar el PEP dice que uses snake_case. Luego, podrías usar esto https://docs.python.org/2/library/multiprocessing.html que tiene un parallel map por ahí perdido.
#695 es más cómodo si te acostumbras desde un principio, así luego no parecerá una sopa de letras con espaguetis.
Voy a repetir la pregunta, "esta mal en algo?" Que no soporta mi implementación? Prefiero hacerlo yo mismo a usar el pool.
No lo he visto, pero me ha llegado este video por email y lo mismo alguno de vosotros le da alguna utilidad, que yo de python 0 (y me da rabia la verdad pero no tengo tiempo xD)
#703 Poco me ha durado la alegría cuando entro en la carpeta del SVM y... Lo que encontré te sorprenderá.
Los que usáis vscode, no tenéis bugueado la UI de los tests? Se queda pillado el icono en la segunda pasada de los tests.
Para reproducirlo solo tenéis que ctrl+shift+P > python configure tests y luego en el icono de la probeta le das a run tests. Luego cambiáis en cualquier test para que de error, pasáis el test y se pone la aspa roja, corregís el test y aunque de OK la aspa se queda, no cambia al tick verde. Me toca reiniciar el vscode o ver el output de la consola
Hola, ¿tenéis algún recurso decente para el correcto uso de asyncio? La documentación oficial está bien pero buscaba algo más 'literario' para acompañar.
Gracias!
#713 Lo había leído y me ha ayudado con algunas cosas, pero buscaba algo más extenso, incluso algún libro. Muchas gracias de todas formas!
Hola a todos!
¿Como va esa cuarentena?
Yo, aprovechando estos días, me he decidido a resucitar un pequeño proyecto que empecé el año pasado durante 3 meses en los que estuve sin poder hacer deporte por una tendinitis. El proyecto lo empecé desde cero sin tener ningún tipo de conocimiento de Python a la vez que hacia cursos de DataCamp ya que aparte de la teoría necesitaba algo practico para motivarme. Cuando lo abandoné allá por Junio tenia tantos frentes abiertos y tan poco tiempo libre que me saturé y se quedó con demasiadas cosas a medias.
Al ser mi primer y único contacto con Python y habiéndolo pensado como un proyecto personal imagino que será muy mejorable ya que no seguí ninguna norma PEP, todos los nombre y comentarios están en Castellano...
El proyecto en sí es una herramienta que lee ficheros de actividades deportivas en formato GPX y analiza el contenido de manera visual como lo hacen Strava, Runtastic...
Por ahora los ficheros que lee correctamente son de dispositivos Garmin o exportados desde Strava. Si el GPX de otras marcas sigue otro patrón es probable que no lo lea correctamente.
Lo he subido a GitHub por si pudiera servir de punto de partida para otras personas con el mismo interés que quisieran llevarlo más allá o aficionados al deporte que quisieran aprender este lenguaje con una temática práctica conocida, con la información generada por uno mismo y que les pueda motivar como a mi.
https://github.com/felixbrinquis/PythonGPXAnalyzer
Por aquí dejo un par de ejemplos de los output que saca el programa en HTML:
https://drive.google.com/drive/folders/1_oNaZILjx0tPaTvUP9jn5SXnl7Hu77cH?usp=sharing
Como he comentado, este es mi primer proyecto, por lo que cualquier idea que tengáis para hacer de este proyecto algo mejor será bien recibida.
Un saludo!
#717 Está muy chulo. Mi consejo es que empieces a refactorizarlo conforme vayas mejorando en Python. Por ejemplo, esto:
df = df.drop('FrecuenciaCardiaca_SAVGOL', 1)
df = df.drop('FrecuenciaCardiaca_5', 1)
df = df.drop('FrecuenciaCardiaca_10', 1)
df = df.drop('FrecuenciaCardiaca_15', 1)
df = df.drop('FrecuenciaCardiaca_20', 1)
Podrías dejarlo como:
df = df.drop(df.filter(regex='FrecuenciaCardiaca_').columns, axis=1)
Incluso cambiando la expresión regular podrías quitarte todo el bloque que tienes y dejarlo en una línea.
#718
Estas cosas no se me ocurren al no conocer el lenguaje con la suficiente profundidad, pero pequeños empujones como este hacen que se aprenda poco a poco cosas nuevas.
Ya he metido el cambio en CalculosFuncion.py y solo con una expresión regular he conseguido reducirlo en 28 lineas.
Al final cumple con el propósito con solo esto:
df = df.drop(df.filter(regex='\B_SAVGOL|_([0-9][0-9]?)$').columns, axis=1)
¡Muchisimas gracias!
He empezado hace unos días con Python u la verdad es que guay. Tiene librerías para hacer muchas cosas.
Ayer estuve haciendo algunas cosillas con BeautifulSoup, para hacer scrapper.
Hoy estoy con web usando web.py y pyMongo (para usar MongoDB) y mañana me mirare panda y Analytics, que es lo que más me interesa de Python.
#717 Interesante, me lo miraré cuando empiece con librerías de visualización de datos!