Consulta:
Python. Función que compara 1234 con otro número y devuelve true si
Los dos números tienen los mismos digitos
Misma cantidad de digitos
Cada digito del otro número está en una posición diferente que en el 1234.
Si el otro número es 2341 es true
Si el otro número es 2431 es false, el 3 repite posición.
Respuesta:Para resolver este problema, puedes utilizar la siguiente función en Python:
```python
def comparar_numeros(num1, num2):
# Convertir los números a listas de dígitos
lista_num1 = list(str(num1))
lista_num2 = list(str(num2))
# Verificar si las dos listas tienen la misma cantidad de dígitos
if len(lista_num1) != len(lista_num2):
return False
# Verificar si los dígitos son iguales y están en diferentes posiciones
for i in range(len(lista_num1)):
if lista_num1[i] != lista_num2[i] and lista_num2[i] in lista_num1:
return False
return True
```
Puedes probar esta función con los ejemplos que mencionaste:
```python
print(comparar_numeros(1234, 2341)) # True
print(comparar_numeros(1234, 2431)) # False
```
Esta función convierte ambos números a listas de dígitos y luego compara cada dígito en las mismas posiciones. Si un dígito es diferente pero está presente en la otra lista, se devuelve `False`. Si todos los dígitos cumplen con las condiciones, se devuelve `True`.