Recent Posts

Pages: [1] 2 3 ... 10
1
Pyhton / functools.reduce
« Last post by chuidiang on Agosto 29, 2024, 08:20:44 am »
functools.reduce permite aplicar una función de forma acumulativa a los elementos de un iterable, reduciéndolo a un solo valor. Por ejemplo

Code: [Select]
from functools import reduce

# Supongamos que tenemos una lista de números
numbers = [1, 2, 3, 4, 5]

# Queremos calcular el producto de todos los números en la lista
product = reduce(lambda x, y: x * y, numbers)

print(product)  # Output: 120

2
Pyhton / functools.partial
« Last post by chuidiang on Agosto 04, 2024, 05:19:57 pm »
El módulo functools en Python incluye la función partial, que permite crear nuevas funciones con algunos argumentos ya fijados. Esto es útil para simplificar llamadas a funciones y crear versiones especializadas de funciones existentes.

Code: [Select]
from functools import partial

def potencia(base, exponente):
    return base ** exponente

# Crear una función parcial que siempre eleve al cuadrado
elevar_al_cuadrado = partial(potencia, exponente=2)

# Usar la función parcial
print(elevar_al_cuadrado(5))  # Salida: 25
print(elevar_al_cuadrado(10))  # Salida: 100

Hemos definido una función potencia para elevar una base a un exponente. Con partial, creamos a partir de potencia la función elevar_al_cuadrado, donde hemos fijado expornente a 2. Podemos a partir de aquí llamar a elevar_al_cuadrado, que sería equivalente a llamar a potencia donde si el exponente es 2.
3
Pyhton / Leer fichero JSON
« Last post by chuidiang on Julio 25, 2024, 09:53:32 am »
El módulo JSON de Python permite leer fichero JSON de forma fácil. Por ejemplo, si tenemos el siguiente fichero JSON

Code: [Select]
{
    "nombre": "Ana",
    "edad": 30,
    "correo_electronico": "ana@example.com"
}

Podemos leer fácilmente y tenerlo en un dict con

Code: [Select]
import json

# Leer un archivo JSON
with open('datos.json', 'r') as archivo:
    datos = json.load(archivo)

print(datos)
# Salida: {'nombre': 'Ana', 'edad': 30, 'correo_electronico': 'ana@example.com'}
print(type(datos))
# Salida: <class 'dict'>
4
Java JSE / Re: Acceso a componentes
« Last post by chuidiang on Julio 24, 2024, 04:55:05 pm »
Se bueno :)
5
Java JSE / Re: Acceso a componentes
« Last post by StarKaz on Julio 24, 2024, 11:42:12 am »
ok, muchas gracias
se bueno??
6
Pyhton / enumerados
« Last post by chuidiang on Julio 24, 2024, 08:38:58 am »
El módulo enum en Python permite definir conjuntos de nombres simbólicos asociados a valores únicos, proporcionando una manera clara y eficiente de manejar constantes relacionadas.

Code: [Select]
from enum import Enum

class EstadoOrden(Enum):
    PENDIENTE = 1
    PROCESANDO = 2
    COMPLETADO = 3
    CANCELADO = 4

# Uso de enumeraciones
estado = EstadoOrden.PENDIENTE

if estado == EstadoOrden.PENDIENTE:
    print("La orden está pendiente.")

podemos también dar el valor automáticamente al enumerado

Code: [Select]
from enum import Enum, auto

class DiaSemana(Enum):
    LUNES = auto()
    MARTES = auto()
    MIERCOLES = auto()
    JUEVES = auto()
    VIERNES = auto()
    SABADO = auto()
    DOMINGO = auto()

# Mostrar todos los días
for dia in DiaSemana:
    print(dia)

7
Java JSE / Re: Acceso a componentes
« Last post by chuidiang on Julio 23, 2024, 08:09:30 am »
Buenas

Para dependencias, lo mejor es usar maven, gradle o una herramienta similar. En un fichero propio de la  herramienta (pom.xml en maven o build.gradle en gradle) pones las dependencias que necesita y se descargan automáticamente de internet cuando compilas. Esas herramientas te permiten también hacer de forma fácil un zip que tenga dentro tu programa y las dependencias de forma que puedas desempaquetarlo en el ordenador que quieras. No conozco netbeans, pero seguramente soporte este tipo de herramientas. IntelliJ Idea y Eclipse lo hacen.

Otra alternativa que se usa a veces, aunque a mi no me gusta mucho, es hacer un único jar con todo dentro. Un jar no deja de ser como un zip con todas las clases compiladas dentro. Nada te impide desenpaquetarlos todos en un mismo directorio y luego empaquetar todo junto en un solo jar. Puedes hacerlo con el comando "jar" que viene con java o hay herramientas que te permiten hacerlo como https://one-jar.sourceforge.net/ .

Saludos.

8
Java JSE / Re: Acceso a componentes
« Last post by StarKaz on Julio 23, 2024, 02:08:05 am »
Si, estaba dándole vueltas a un código de hace unos años que encontré para hacer Jinternalframes modales y que en su momento retoque como pude para que funcionara, pero tal y como lo tenía no podía crear una librería independiente del Jframe, cuando me dijiste que no había otra que pasar el JFrame en el constructor del jinternalframe (en este caso) pues cree una clase que extiende a JFrame y después extiendo el JFrame a este último con una serie de listeners, propiedades y métodos que después puedo sobrescribir y al fin conseguí asilar todo ese código y crear una librería aparte sin fallos de dependencias de componentes y sus nombres. Tengo que darle unos retoquitos mas (¡¡¡y comentarlo!!! Que eso siempre lo voy dejando y luego no me entero)

Gracias por la orientación, la ultima vez me diste la solución directamente, pero esta vez conseguí aprender más cosas XD

Y ya que estamos…. Sabrias decirme como hacer una librería de librerías?? Quiero decir crear un jar con los siguientes por ejemplo:
balloontip-1.2.4.1.jar
javax.mail.jar
postgresql-42.6.0.jar

uso netbeans 16
9
Pyhton / dataclasses
« Last post by chuidiang on Julio 22, 2024, 03:55:19 pm »
Las dataclasses fueron introducidas en Python 3.7 para simplificar la creación de clases que son esencialmente "contenedores de datos".

A veces hacemos clases que solo contienen datos y debemos ponerles constructores, métodos para sacar por pantalla, equals, etc. Por ejemplo

Code: [Select]
class Persona:
    def __init__(self, nombre, edad, correo_electronico):
        self.nombre = nombre
        self.edad = edad
        self.correo_electronico = correo_electronico

    def __repr__(self):
        return f'Persona(nombre={self.nombre}, edad={self.edad}, correo_electronico={self.correo_electronico})'

persona = Persona('Ana', 30, 'ana@example.com')
print(persona)

con dataclasesses quedaría más sencillo

Code: [Select]
from dataclasses import dataclass

@dataclass
class Persona:
    nombre: str
    edad: int
    correo_electronico: str

persona = Persona('Ana', 30, 'ana@example.com')
print(persona)
10
Java JSE / Re: Acceso a componentes
« Last post by chuidiang on Julio 22, 2024, 08:10:17 am »
Buenas

Imagino que te refieres al constructor del componente. Si el componente no está construido no puedes meterlo en ningún lado y por tanto no puedes mirar ahí su jerarquía. Salvo que en el constructor mismo lo añadas donde sea, pero eso ya te obligaría a pasar el padre (el JFrame o lo que sea) como parámetro del constructor.

Saludos.
Pages: [1] 2 3 ... 10