Articles of operadores de

¿Hay formas más elegantes de manejar listas en Java? (Python VS Java)

Me gusta la forma en que puedo tratar las listas en Python. Hace que cualquier solución recursiva parezca fácil y limpia. Por ejemplo, el problema típico de obtener todas las permutaciones de los elementos en una lista, en Python se ve así: def permutation_recursion(numbers,sol): if not numbers: print “this is a permutation”, sol for i […]

¿Hay alguna manera de hacer que “X () en ” se vuelva verdadero?

Tengo un objeto personalizado en este proyecto mío , llamado Page. La característica de identificación de una página es su título . Una página se crea normalmente llamando a Wiki.page , Wiki.category o Wiki.template , o generándolas a partir de otros métodos como Wiki.random . (Te recomiendo que mires un poco lo que es antes […]

¿Por qué los operadores “y” y “o” no están en Python?

No estaba al tanto de esto, pero aparentemente las palabras clave and y or no son operadores. No aparecen en la lista de operadores de python . Solo por pura curiosidad, ¿por qué es esto? Y si no son operadores, ¿qué son exactamente?

¿Existe realmente un operador @ en Python para calcular el producto de puntos?

¿Es correcta esta respuesta: https://stackoverflow.com/a/39662710/1175080 ? Citando esa respuesta. En Python 3.5, hay un nuevo operador para el producto de puntos, por lo que puede escribir a = A @ B en lugar de a = numpy.dot (A, B) No parece funcionar para mí. $ python3 Python 3.6.1 (default, Apr 4 2017, 09:40:21) [GCC 4.2.1 […]

¿Cómo puedo anular las comparaciones entre ndarray de NumPy y mi tipo?

En NumPy, es posible usar el atributo __array_priority__ para tomar el control de los operadores binarios que actúan sobre un ndarray y un tipo definido por el usuario. Por ejemplo: class Foo(object): def __radd__(self, lhs): return 0 __array_priority__ = 100 a = np.random.random((100,100)) b = Foo() a + b # calls b.__radd__(a) -> 0 Lo […]

Si x es la lista, ¿por qué x + = “ha” funciona, mientras que x = x + “ha” lanza una excepción?

Por lo poco que sé, + op para listas solo requiere que el segundo operando sea iterable, lo que “ha” claramente es. En codigo: >>> x = [] >>> x += “ha” >>> x [‘h’, ‘a’] >>> x = x + “ha” Traceback (most recent call last): File “”, line 1, in TypeError: can only […]

Cuerdas, ints y operadores en Python

¿Cómo puedo usar un operador aritmético (entrada por parte del usuario como una cadena) en una operación? Puedo imprimir la operación en sí, ¡pero quiero imprimir la solución! Aquí está mi torpe bash: # Initialise variables x = 2 y = 3 # Prompt the user for an arithmetic operator operator = input(“Please enter *, […]

¿Cómo sobrecargar `float ()` para una clase personalizada en Python?

Resumen ¿Cómo puedo sobrecargar el float incorporado para mi clase, de modo que cuando llamo a float() en una instancia de él, se llama a mi función personalizada en lugar del incorporado por defecto? Mi clase Hola, estaba codificando mi propia clase de Fractions (para una precisión de operación de punto flotante arbitrariamente alta). Funciona […]

+ y + = los operadores son diferentes?

>>> c = [1, 2, 3] >>> print(c, id(c)) [1, 2, 3] 43955984 >>> c += c >>> print(c, id(c)) [1, 2, 3, 1, 2, 3] 43955984 >>> del c >>> c = [1, 2, 3] >>> print(c, id(c)) [1, 2, 3] 44023976 >>> c = c + c >>> print(c, id(c)) [1, 2, 3, […]

Python aumentando múltiples variables en línea

¿Por qué funciona esto? >> x, y = (1, 2) >> print x, y 1 2 Pero boost los resultados en errores de syntax … >> x, y -= (1, 2) SyntaxError: illegal expression for augmented assignment ¿Hay alguna forma diferente, esperaba? >> x, y -= (1, 2) >> print x, y 0 0