Python 2.6, что означает% в этом контексте? - PullRequest
1 голос
/ 17 февраля 2011
def f(x):
    return x % 2 != 0 and x % 3 != 0

Просто изучая язык, я думал % было для форматирования строк?

Найдено на официальном уроке: http://docs.python.org/release/2.6.1/tutorial/datastructures.html

Ответы [ 3 ]

8 голосов
/ 17 февраля 2011

В контексте чисел это означает по модулю - остаток, который вы получите при делении x на 2, равен x% 2.

2 голосов
/ 17 февраля 2011

Это, мой друг, будет оператором по модулю:

http://en.wikipedia.org/wiki/Modulo_operation для того, что это такое, и http://docs.python.org/reference/expressions.html#binary-arithmetic-operations для всех двоичных арифметических операторов в python.

0 голосов
/ 17 февраля 2011

Это оператор по модулю, так что ваша функция возвращает true тогда и только тогда, когда число x не делится на 2 и не делится на 3. x% y представляет остаток от деления x на y. Для примера 5% 2 = 1 и 5% 3 = 2 и, таким образом, для числа 5 ваш вышеприведенный метод возвращает значение true.

...