Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Yidu

#1
Hola!

Estoy probando el match...case de la nueva versión de python 3.10. Y aunque se comporta según lo esperado (semejante a otros lenguajes), no se si esta sintaxis, en este caso que muestro es demasiado redundante:

Código (python) [Seleccionar]

numero = 90
match numero:
   case numero if numero > 110:
       print('El numero es mayor')
   case numero if numero < 100:
       print('Es menor')


En este caso el resultado que imprime es "Es menor". Es un ejemplo simple. Y en este caso, supongo, sería mejor usar los IFs de toda la vida. Es decir, sin el match. Me llama la atención que se tenga que indicar tantas veces la variable numero. Es decir, dos veces por cada case. O quizás no lo estoy haciendo correctamente y no se recomienda esta estructura en un código así.

Saludos!
#2
Hola!

Pues esa es la pregunta. Aunque he visto por algunos sitios el uso de entornos, yo busco algo mas "artesano". Es decir, usar un par o tres de versiones de Python en Windows. Pero como comento, sin entornos virtuales y anacondas varias.

Solía utilizar la versión 3.7.2, y claro, al instalar la 3.9.x me da algún error como el mapeo con conjuntos. Pronto sale la 3.10 con el famoso match. Y claro, me hace gracia tenerlo. No suelo cambiar de versiones, como comento, tenia bastante tiempo instalada la 3.7.2.

Por lo que he leído bastaría nombrar los directorios como /python37 y /python39 y supongo modificar el path. Allí me surgen las dudas, ya que si instalamos un módulo con pip ¿En que versión se instala?

En tema de no querer instalar anaconda, es que es muy pesado para mi ordenador. Aparte, muchas de las cosas que trae, ni las voy a usar. Y los entornos virtuales tampoco me convencen en exceso. Solo quiero un par de "Pythones" y poder escoger de manera manual la versión. Saludos!
#3
Scripting / Re: ¿Es cierto esto de Python?
2 Junio 2020, 19:29 PM
A veces da un poco de pereza responder estos temas. Pero decir esas cosas tan feas de mi python no son agradables para los sentidos  ;D

Algunos  seres dicen que conocen/dominan 1.000 o 2.000 lenguajes. Se suelen parecer a los que entrevistan por la tele en videoconferencia y estos se ponen delante de la biblioteca de su casa. Y claro, tienen 5.000 libros y seguro que se han leido todos unas 5 veces  ;D

Para mi tambien seria muy facil e injusto decir que el lenguaje C y derivados me parecen una aberracion. Sobre todo por el tinglado de corchetes y otras pijotadas. Pero claro, cualquiera puede rebatir este argumento tan elaborado que he razonado. Y contar las mil maravillas del C, el assembler, el Basic de los 80 o el codigo morse.

Tampoco es menos cierto que muchos "grandes" programadores que se quejan tanto de python no saben ni el algoritmo del ordenamiento de la burbuja. Y asi les luce el pelo luego.

No se, yo creo que python es el mejor lenguaje de programacion del universo. Me parece que hasta las naves extraterrestres lo usan. Pero creo que en la version cuantica de python.

Luego, cada cual, se puede conformar con cualquier lenguaje de la familia de las ventanitas y tal...
#4
Cita de: tincopasan en 24 Septiembre 2017, 00:04 AM
si es por gratuito también esta ninja ide, en lo particular uso wing ide 6 que es excelente, unque claro es de pago. y no consume tanta ram

¿Wing IDE de pago? Yo uso ambas versiones, la Wing 101 7.0 y la Wing Personal 7.0
Que yo sepa son Free y muy buenas como bien dices.  Es cierto que tienen la version de pago, la PRO, creo. Pero con las Free va uno mas que sobrao.

Por cierto, tambien uso Geany que es rapido como un diablo  ;D
#5
Scripting / Re: ¿Comenzar con Python?
15 Mayo 2019, 21:31 PM
Cita de: Mr. Bit en 15 Mayo 2019, 01:28 AM
Buenas! Este es mi segundo post en este Foro. Quería preguntar si Python era un buen programa y lenguaje para empezar a "estudiar"/aprender programación de manera mas profesional o avanzada.

Lo único que se de programación es Pawno y Batch (aunque yo no considero que este ultimo sea un 100% para programar).

A pesar de que no se prácticamente nada de programación, soy una persona que quiere y está dispuesta a aprender mas y mas. Siempre fue un tema que me agrado e interesó.

De la forma que lo preguntas yo aprenderia python sin dudarlo. Empezaria haciendo pequeños scripts para ir familiarizandome con la sintaxis. Y sobre todo escogeria un lenguaje que utilizara varios paradigmas de programacion. Cuando cogiera soltura iria por la programacion orientada a objetos. Evitaria ir aprendiendo varios lenguajes a la vez. O en todo caso, ir mirando unos pocos para quedarme con el que mas me gustara.

Python es de proposito general. Y en el indice TIOBE no sale mal parado:
https://www.tiobe.com/tiobe-index/

Evitaria hacer demasiadas preguntas en foros sobre cual lenguaje utilizar. Puede confundir mas que ayudar. Mira unos pocos (que no son tantos) y a picar codigo. Ten encuenta que cada año salen tropecientos lenguajes distintos o de moda. Y la mayoria son clones unos de otros.

Esta pagina esta bien para ir conociendo Python. Saludos!
http://www.tutorialesprogramacionya.com/pythonya/
#6
Scripting / Re: Que nivel en python tengo?
24 Marzo 2019, 19:01 PM
Cita de: srWhiteSkull en 24 Marzo 2019, 18:24 PM
Pero él no pregunta sobre su nivel de programación, pregunta sobre su nivel de python.


Bueno, yo pienso que una cosa lleva a la otra. El autor del post ha puesto una serie de temas que son generalidades en la mayoria de lenguajes y luego algunos modulos. Basandose en esto, con poner que conoce la programacion estructurada, funcional y la POO ya se pueden hacer miles de cosas. Pero eso si, conociendo la algoritmia.

Luego pone otros temas que son librerias como tkinter, json, csv, bases de datos y tal. Estaras deacuerdo conmigo que una vez que conoces lo "basico" en python no es muy complicado aprender nuestra libreria favorita. Es ponerle ganas. Pero si uno no va usar una base de datos, no tiene que aprenderlo por narices.

Porque por esa regla de tres, modulos de juegos no ha puesto ninguna. Igual no le interesan. Por ejemplo pygame, cocos2D, pyglet, etc...

Todo esto lo comento porque a veces me he cruzado con alguien que dice que domina un lenguaje y las estructuras como los arboles le suenan a cosas esotericas. Esto lo he podido ver en algunos libros que he comprado y canales de youtube. No paran de crear canales ensañando python y ya casi no tienen ni visualizaciones. Se centran en enseñar lo basico del lenguaje y cuatro cosas de la POO. En cambio, se pueden ver en otros lenguajes como java o c++ donde si se enseñan estas estructuras.

Esta claro que cada cual puede subir el contenido a youtube sobre la programacion en python. Pero si no ofrece nada nuevo es perder el tiempo a el y al personal.


#7
Scripting / Re: Que nivel en python tengo?
24 Marzo 2019, 17:43 PM
Bueno, antes de nada, habria que ver con que profundidad conoces sobre esos temas. Como han dicho un poco mas arriba parece un temario de un canal de youtube. Y no es una critica. Es una forma igual de buena que otra para aprender. Pero claro, yo pienso que lo importante en la programacion es el conocimiento profundo de la algoritmia.

Se puede cojer cualquier canal de youtube y aprender de boxeo. Pero dudo mucho que subiendo al cuadrilatero durasemos muchos asaltos contra cualquier pugil. Quizas es una exageracion. Pero para mi, lo basico en programacion, es ir probando con pequeños programas propios.

Mi punto de vista es que antes de ir probando modulos y modulos en python (que son casi infinitos) es profundizar en la programacion de algoritmos. Por ejemplo, temas como recursividad, pilas, colas, ordenamientos, listas enlazadas, arboles binarios, arboles de decision, grafos, etc...

Uno puede saber mucho sobre la sintaxis de un lenguaje, pero sin conocimiento de algoritmia es papel mojado.

Por eso pienso que es mejor centrarse al principio en dominar estos temas y luego ir conociendo los modulos que python que nos puedan interesar.

Ahora se ha puesto de moda el machine learning y la IA con python. Incluso los arboles se pueden importar en librerias. Cosa que me parece muy bien. Pero claro, me parece bien cuando un programador sabe como construir esas estructuras aunque sea de forma basica.

Cuando nos acercamos a la inteligencia artificial en python (redes neuronales, aprendizaje supervisado, machine learning, etc...) los ejemplos ya son bastante avanzados para el que se quiere iniciar. Y a la postre se deben importar tropecientos modulos.

Por eso creo que es importante crear nuestros propios programas de IA aunque puedan parecer simples. Es decir, antes de recurrir a modulos externos.


#8
Cita de: NEBIRE en  4 Marzo 2019, 18:20 PM
Confundes (pasa habitualmente), el lenguaje con las extensiones del lenguaje.

Un lenguaje por lo común se remite a unas pocas decenas de 'keywords', y una especificación que explica cada parte que compone el lenguaje. Eso es el lenguaje, el resto son extensiones del lenguaje que simplemente lo enriquecen. Es decir programas librerías que extienden la utilidad del lenguaje.

De hecho cuando un lenguaje carece de ciertas extensiones lo primero que hace uno es crearse alguna que otra librería justamente con esa funcionalidad que uno acostumbra a usar y de la que el lenguaje que estés usando carece. en definitiva tú mismo estás creando tus propias extensiones.

Pues fijate que yo lo veo al reves. Esta claro que yo tambien he usado librerias de python. Pero creo que a veces se recurren demasiado pronto a ellas. Entonces, de esa forma, es muy facil decir que se conocen muchos lenguajes. Porque como dices tu, la mayoria de los lenguajes se basan en lo mismo...bucles, cadenas, condicionales, clases, funciones, etc...

Ahora se puede ver con la inteligencia artificial y el machine learning. En python ya hay ingentes librerias sobre estos temas. Y muchos programadores recurren a ellas sin saber poco o nada de arboles o grafos. Ya que estos estan implementados en ellas. No digo que se deba reinventar la rueda, pero al menos tener unos minimos antes de recurrir a estos modulos o librerias.
#9
Cita de: Eleкtro en  3 Marzo 2019, 22:58 PM
Pero el caso es que hay muchos programadores que poseen los conocimientos suficientes de Python como para no necesitar depender de una IDE para desarrollar scripts muy simples, ¿y que pasa si yo deseo coger el notepad y ponerme a escribir un script de digamos 30 o 40 lineas y lo quiero hacer lo más rápido posible simplemente para testear el resultado de ejecución del script?, ¿y si precisamente no deseo hacer uso de la indentación por que es un simple script de prueba y por eso quiero ignorar la idnentación para aumentar al máximo posible mi productividad ya que además pretendo hacerle cambios a cada rato a ese código hasta obtener el resultado esperado?

Respeto tus argumentos, pero creo que se tarda lo mismo en abrir el notepad o el bloc de notas a un IDE. No quiero dejar mal a ninguno de ellos, pero es cierto que algunos consumen tantos recursos que necesitan un dia para abrir el editor y trabajar en el. Yo suelo usar el Geany cuando quiero testear algo rapido. Ya que es muy ligero y no va cargado de absurdeces. Y la verdad, no le veo tanto problema con la indentacion que se hace sola. Otra cosa son las llavecitas del C que has de tirar de combinacion de teclas, y a mi modo de ver, crear un codigo caotico.

En si, el hilo versaba sobre esto. Ya comente que no se trataba de que lenguaje era mejor o peor. Sino, que cuando uno ve la simpleza del codigo en python, cuesta acostumbrarse a otros lenguajes. Y entonces tenia curiosidad si alguien que hubiera programado toda la vida en C++ le pasaba algo parecido al usar python. O en cambio, se sentia aliviado utilizandolo.

Como bien dice tincopasan, tampoco se debe declarar el tipo de variable en python. Y claro, esto si que es improductivo comparado con la indentacion de python. Yo veo el codigo redundante. Aqui no se trata de convecer a nadie de que lenguaje es mejor o peor. Yo por supuesto me quedo con python sin lugar a dudas. Solamente que al acercarme a C++, pense...joer, como se complican la vida con la sintaxis. De ahi el titulo de que uno se acostumbra a lo bueno.
#10
Cita de: MCKSys Argentina en  3 Marzo 2019, 21:05 PM
En mi caso, mi motivación para aprender otros leguajes es simple: trabajo.

Por supuesto, no aprendo todo acerca del lenguaje, sinó lo necesrio para realizar mi tarea.



Ahi esta el quid de la cuestion. No creo que haya mucha gente que de todos los lenguajes que dice conocer sea de forma profunda. Que por otra parte es logico.

Como comente, todo el mundo tiene un lenguaje favorito. En mi caso python. Y claro, al preguntarme que otro lenguaje queria conocer me decante por C++ por las razones expuestas. No me interesa ningun nuevo lenguaje de moda o que son mas de lo mismo.