[Python] Hilo general

c0b4c

#984 a lo menor me estoy flipando, pero en lo primero es posible que te refieras a numba?

1 respuesta
desu

#991 Me suena numba, lo habia visto pero nunca lo he tocado, pero no era lo que hablamos no. Mi mensaje original es lo que me dijo un tío y la verdad confio poco en opiniones sin fuente / código. Por eso pregunte aquí que al menos picais python y trabajáis librerías de este estilo a ver si lo sabeis xd.

100% hablábamos de numpy y que te hace "todo el paralelismo automático aprovechando todos los threads disponibles" y que para algunas operaciones de búsqueda tienen "algoritmos de optimizacion para no recorrer todo el array". De momento ya he descartado la libreria por encima de numpy (raster) hiciese toda esa magia asi que tiene que ser numpy si o si o se lo saco de la chisteria.

Necesito verlo, ver que se optimiza y como y la implementacion interna. Ademas si veo que hace mil cosas por mi de verdad (parelilismo automatico + optimizaciones inteligentes) que de momento no me estais confirmando, me pondre unas semanas a aprender numpy en serio por si vuelvo a tocar algo así en el futuro porque asi no lo hago a mano y realmente me valdria la pena para acabar antes.

A ver si puedo en algun momento echarle un ojo.. que es una locura de code base xd

1 respuesta
Unrack

#992 pues creo que hay una librería intermedia mkl que es la que funciona en el multithreading. Igual tirando por ahí ves algo.

1
vago_21

Hola, los de windows + vs code ¿usáis algún linter? yo uso pylama, pero los warnings por la limitación de 79 caracteres de longitud de línea me parece algo corta, teniendo en cuenta las pantallas de ahora, aunque es cierto que si la respetas, cuando abres en columnas varios archivos te permite verlos todos.

En cualquier caso ¿hay otro linter parecido que no use esta limitación o se puede cambiar el número en pylama?

saludos

1 respuesta
bLaKnI

#994 En Pycharm es el doble. Creo se debe poder configurar en el linter no? Hay Sonalint para VSCode? sino, vuelve al PyCharm ... :(

1 respuesta
HeXaN

#967 Siguiendo con esto una lectura muy ligera: https://ncik-roberts.github.io/posts/pep622.html

vago_21

#995 No está ese, pero he conseguido modificar el valor haciendo una búsqueda del 79 en todo el proyecto, era de pydocstyle el warning.

Antes usaba pycharm, pero como en el curro estoy todo el día con el vs code, me he acostumbrado y lo tengo bien configurado, así que intento usar ese en la medida de lo posible.

Gracias!

1 1 respuesta
uchar

#997 Yo no te aconsejo "manipular" en exceso esa limitación de 79 caracteres. Está definido en el PEP 8 y su razón de ser se basa en la filosofía descrita en el "Zen de Python"

Lo que puedes hacer es crearte una regla vertical en VSCode: https://stackoverflow.com/questions/29968499/vertical-rulers-in-visual-studio-code

Si de todas formas quieres desactivarlo: https://code.visualstudio.com/docs/python/linting#_pycodestyle-pep8
El error concreto para lineas que exceden el máximo es el E501

1 respuesta
vago_21

#998 jajajaj tremendo el Zen de Python, no lo conocía, pero es cierto, no soy holandés, y como reconocí ayer, la limitación de 79 me permite abrir varios archivos a la vez y que se vea todo el código.

Me has convencido

1
bLaKnI

El puto TOC de las nuevas generaciones... JODER!
Vivan los boomers y viva esto:

toma ZEN.

HeXaN

Dejo un par de cosas por aquí:

https://www.reddit.com/r/Python/comments/hj0vp6/my_python_regex_ebook_with_hundreds_of_examples/

https://www.reddit.com/r/Python/comments/hjgvcz/automate_the_boring_stuff_with_python_online/

https://devblogs.microsoft.com/python/announcing-pylance-fast-feature-rich-language-support-for-python-in-visual-studio-code/

5
vago_21
1 respuesta
hda

#1002 tengo ahora mismo unos 45 libros, sobre todo de pyton y ciencia de datos, en mi humble bundle. Son tantos que no tengo claro por cuál empezar. Creo que haré un código para extraer todos los libros, sus metadatos y cruzar sus puntuaciones en, por ejemplo, goodreads. Así hacerme una idea de por cuál empezar. Luego posteo el disgest por aquí.

(De paso pruebo beautifullsoup con formularios de logueo, que no lo he hecho todavía)

2 respuestas
vago_21

#1003 :rofl: estoy exactamente igual, la vida es demasiado corta y no nos va a dar para aprender tanto jajja

HeXaN

Total, los libros de los Humble son basura xD

1 respuesta
NeV3rKilL
#1003hda:

Creo que haré un código para extraer todos los libros, sus metadatos y cruzar sus puntuaciones en, por ejemplo, goodreads.

Lo típico que te lleva más tiempo programar que hacer la tarea a mano.

1 1 respuesta
Slowbro

#1005 Los libros del humble tienen su utilidad. A mi me vienen bien para descubrir conceptos que no conozco y librerías que pueden estar bien. Si, se que dirás que es muy triste que en un Packt descubras conceptos, pero tiro de donde puedo y los libros buenos suelen ser caretes (quitando varias excepciones).

hda

#1006 es posible. Son muchos, de paso automatizo la descarga y la búsqueda de puntuaciones. Me está molando, porque no había recorrido nunca una web por xpath.

telemaco103

Hay alguna manera de poner el nombre a una variable dependiendo de un indice o de otra variable? Por ejemplo, imaginaos que tengo el índice i con valor 4, pues quiero crear 4 variables distintas (esto es importante, las variables tienen que ser distintas, no me vale que estén en una lista) que se llamen var1, var2, var3 y var4. No creo que se pueda, pero si se puede y alguien sabe me ayudaría con un problema.

2 respuestas
eondev

#1009 y luego como accedes a las variables si están creadas en tiempo de ejecución con nombres que desconoces? xD
Lo que buscas se llama metaprogramación, creo

Lo suyo es usar un diccionario de clave valor, no sé por qué tanto rollo por no querer usar listas ;/

1 1 respuesta
Kaiserlau

#1009 un diccionario o una colección y pista.

1 respuesta
telemaco103

#1010 Esa es la cosa, luego poder acceder a ellas con otra variable, pongamos n=2, poder llamar a varn y referirnos a var2.
#1011 Es que necesito que sean variables independientes.

La cosa es que estoy trabajando con un programa ya hecho que tengo que modificar y si puedo hacer esto, tendría que modificar mucho menos, pero no creo que haya nada que se pueda hacer.

3 respuestas
Krules

#1012 lo que dices no se puede hacer en Python.

eondev
#1012telemaco103:

Esa es la cosa, luego poder acceder a ellas con otra variable, pongamos n=2, poder llamar a varn y referirnos a var2.

No te sigo del todo, pero en python puedes acceder a una variable con una clave cuyo nombre se puede asignar en ejecución:
a = dict()
Así insertas

a['var2'] = valor
a['nombre_generado_en_ejecucion'] = valor2

luego simplemente llamando a a['nombre_generado_en_ejecucion'] accedes a su valor interno. Lo único que cambia es que en vez de hacer una llamada así

print(nombre_generado_en_ejecucion)
lo haces así
print(a['nombre_generado_en_ejecucion'])

1 respuesta
Naith

#1012 ¿Esto?

var = "var_name"
exec(var + " = 'value'")
print(var_name)
1
telemaco103

#1014 vale, he concretado muy poco. Las variables no son variables normales, estamos usando la librería Tkinter para una GUI. La cosa es que por ejemplo tiene 8 personas y cada una un entry donde puedes meter pongamos la edad, del estilo:
Persona 1: (entry) 45
Persona 2:(entry) 23
...
Persona 8: (entry) 37

Entonces lo que está hecho son 8 labels que tienen de nombre Nombre1, Nombre2... Y 8 entrys Entry1, Entry2...

Que tengo que hacer yo, que en lugar de ser 8, sea variable eligiendolo al principio (número de personas:4) y se pinten sólo 4. Lo que se me ha ocurrido es hacer un for y que cada iteración pinte una nueva fila. Cual es el problema, que en ese for pongo el label y el entry y al pasar a la siguiente iteración he perdido el entry anterior y ya no puedo recoger su valor y tampoco puedo usar el mismo programa porque lo tiene todo hecho para 8, aunque no se use.

1 respuesta
Kaiserlau

crea un diccionario vació, los labels no deja de se un objeto con unas propiedades, puedes asignar la clave por el nombre del name del label o el id y el valor con el objeto de label mismo (o lo que quieras).

Así tienes un diccionario con nombre como clave y el objeto como valor. Nos e si es exactamente lo que pides pero es básicamente jugar con el diccionario, claves y valores. Tienes todos las claves accesibles nombre de la "variable" y su valor a mano.

2 2 respuestas
eondev

#1016 y porque no lo guardas? xD

1 1 respuesta
telemaco103

#1017 #1018 Se puede hacer una lista/tupla/diccionario de por ejemplo Entrys como si fueran enteros?

1 respuesta
eondev

#1019 claro, diccionario de clave valor donde el valor es un entero xD

1 respuesta

Usuarios habituales