Ruby эквивалентен

Python вызывает выражения «выражения», поэтому вопрос, возможно, не полностью сформирован.

Оператор состоит из почти всего, что вы можете сделать в Python: вычисление значения, назначение значения, удаление переменная, печать значения, возврат из функции, создание исключения и т. д. Полный список находится здесь: http://docs.python.org/reference/simple_stmts.html#

Выражение выражения ограничено вызывающими функциями (например, math.cos (theta) »), операторами (например,« 2 + 3 ») и т. д. для получения значения.

7
задан cdleary 18 July 2013 в 12:40
поделиться

2 ответа

Использовать a.equal? b

http://www.ruby-doc.org/core/classes/Object.html

В отличие от этого, ==, равное? метод никогда не должен переопределяться подклассами: это используется для определения объектных идентификационных данных (то есть, a.equal? (b) эквивалентность того же объекта как b).

12
ответ дан 6 December 2019 в 15:39
поделиться

Вы могли также использовать __id__. Это дает Вам объекты внутренний Идентификационный номер, который всегда уникален. Чтобы проверить, ли к объектам то же, попробовать

a.__id__ = b.__id__

Это - то, как стандартная библиотека Ruby делает это насколько я могу сказать (см. group_by и другие).

2
ответ дан 6 December 2019 в 15:39
поделиться