« first day (1997 days earlier)      last day (66 days later) » 

12:30 AM
porque haces esto?
note.Value = cdata
noteArray.Add(note)
y no esto?
noteArray.add(cdata)?
 
 
6 hours later…
6:44 AM
Jellou
 
 
10 hours later…
4:51 PM
Esto es en respuesta al cilindro parabólico? No lo pillo...
 
Eso no representa un cilindro parabólico, sino un cilindro "normal" con un par de semiesferas en cada extremo. El cilindro parabólico es el resultante de desplazar verticalmente una parábola, en vez de un círculo.
Entonces tú estabas preguntando por uno como éste, pero que en lugar de terminar en semiesferas termine en paraboloides de revolución?
 
Bueno, cuando lei "cilindro parabólico" pensé en un cilindro cuyo extremo tiene forma de parábola. El dibujo no es exacto, pero es lo mejor que encontre. Para mi cilindro es un cuerpo de rotación.
 
Yo también pensé lo mismo, pero luego lo busqué. Y parece que no, un cilindro no se obtendría por rotación, sino por traslación de una cónica. Si lo piensas, sería la única forma de lograr un cilindro con sección elíptica
o cilindros "oblicuos" (el eje de traslación no sería en ese caso perpendicular a la cónica)
 
 
3 hours later…
7:46 PM
Cada vez que veo esta pregunta, me pregunto que es lo que ofendió a ffflabs, no se le hizo ninguna edición a la pregunta y para mi no es una falta de respeto.
-2
Q: ¿Como hago un programa en python que resuelva esto?

RicardoConforme N numeros crear una tabla de multiplos hasta n 0 1 2 3 4 5 1 1 2 3 4 5 2 2 4 6 8 10 3 3 6 9 12 15 4 4 8 12 16 20 5 5 10 15 20 25

Al menos si leen el titulo de la pregunta, OP pregunta como hacerlo, no pide que se lo hagan
 
Bueno, yo entiendo que no se refiere al tono de la pregunta, que no es irrespetuoso, sino más bien en un sentido metafórico o indignado, Si le traduzco, entiendo "es una falta de respeto hacia el tiempo de los demás el venir con una pregunta que denota tan poco esfuerzo"
Y aunque es cierto que el título es "¿Cómo hago un programa en python que resuelva esto?", no creo que el OP espere una respuesta del estilo: "Pues primero piensa el algoritmo, después abre un editor y escribe el código". Más bien esperará que alguien le dé el código
 
Ya veo. Además si es probable que OP quiera eso mismo, una respuesta con código...
 
 
1 hour later…
9:19 PM
Saben, tuve ganas de hacer un modulo que facilitara el proceso de enviar excepciones cuando el tipo de argumento no es el esperado. Apenas empecé, me di cuenta por que Python "es para adultos". Y si un argumento no es del tipo esperado pero funciona de igual modo que el argumento esperado?
Siempre se aprende algo nuevo c:
 
Claro, un ejemplo típico es def sumar(a, b): return a+b
 
Se podría usar el tipo float o hasta el Decimal
 
es una función que funcionará con muchos tipos diferentes, aunque la hubieras pensado "para enteros". Funcionará también con cadenas, incluso
o con listas, o con matrices, o con cualquier tipo que inventes y que implemente __add__()
es lo que llaman "duck typing"
realmente no te importa el tipo que sea, lo que te importa es que ese tipo tenga un operador "+", o sea, que se comporte como lo que necesitas
 
Eso del "duck typing" es algo genial de Python c:
 
"Si camina como un pato y grazna como un pato, es un pato"
 
9:21 PM
Jjajajajjaja tienes razon
 
o sea "si cumple el contrato esperado de él (tiene ciertos métodos), me vale"
 
Claro, y no quiero colaborar en arruinar eso
 
bueno, hay veces en las que se necesita un tipado más estricto
para evitar tener que chequear dentro de la función el tipo del parámetro
funciones del estilo if isinstance(parametro, int): ...; elif isinstance(parametro, str): ... etc son feas
pero si quieres tipos los tienes también
aunque no en tiempo de ejecución, sólo en tiempo de "compilación"
def sumar(a: int, b: int) -> int:
  return a+b
 
Eso que hace exactamente?
A ver?
digo probar
 
al ejecutarlo no hace nada especial. Funciona como siempre
sumar(1, 2) retorna 3
sumar("foo", "bar") retorna "foobar"
o sea, no hace nada en realidad
pero python "anota" como parte de la función esos tipos, por si quieres escribir código que lo verifique
y sobre todo, permite a herramientas de análisis estático como mypy o pyright que verifique tu código
si en el código tienes sumar("foo", "bar") y lo pasas por mpypy te da un error en esa línea
 
9:26 PM
Ahhhh ya veo lo que hace
 
pero no impide que se pueda ejecutar de todas formas
 
O sea que lo que yo pensaba hacer ya existia?
 
si, pero no
porque creo que tú querías verificarlo en tiempo de ejecución
 
Exactamente
 
python realmente ignora las anotaciones de tipo en tiempo de ejecución
puedes escribir un programa "incorrecto" desde el punto de vista de los tipos. Python lo ejecutará como si nada, como si esas anotaciones no estuvieran ahi
pero otras herramientas pueden usarlas
por ejemplo VSCode
 
9:27 PM
me referia a hacer un modulo que haga lo de isinstance en forma de funcion
 
Te subrayaría en rojo una llamada con tipos incorrectos
 
por ejemplo "restrict(arg, str)"
 
y también te ofrece autocompletado inteligente en función de los tipos
 
Eso está bueno!
 
si estás escribiendo una función en la que has declarado que el parámetro x es de tipo str, al poner en el editor x. te sugerirá métodos de la clase str
al final es muy cómodo
 
9:28 PM
from mymodule import *

def sumar(a: int, b: int) -> int:
  restrict(a, int)
  restrict(b, int)f
Yo igual me quedo con el idle de Python
 
supongo que podría hacerse más elegante con un decorador
 
Eso estaba pensando
 
from mymodulo import enforce_types

@enforce_types
def sum(a: int, b: int) -> int:
  return a+b
 
Gracias Abulafia, me convenciste de hacer ese modulo!
 
el decorador podría hacer introspeccion de la función para mirar los tipos
 
9:30 PM
Se ve genial! Voy a investigar más sobre el :tipo
Como se llama eso?
 
type annotations
o type hints
y echale un vistazo a la documentación del módulo inspect
 
Anotado! Gracias!
Dale!
 
Parece que alguien lo hizo ya :-)
 
Siempre lo hizo alguien unu
todo
Pero genial que exista!
Otra idea descartada
 
También existe pydantic
 
9:32 PM
A alguien se le ocurre una idea para que pueda hacer un modulo de Python?
 
puedes hacer ese del que estábamos hablando, aunque ya exista. Seguro que aprendes un montón mientras lo haces
 
Esta bien, lo consideraré crear! Gracias Abulafia nuevamente, eres un capo! c:
Y puedo basarme en lo que hizo esa persona en reddit
 
Bueno, me retiro. Hasta mañana!
 
Hasta mañana! c:
 

« first day (1997 days earlier)      last day (66 days later) »