2015-02-16 2 views
0

Я искал, но похоже, что это почти слишком просто, чтобы быть опубликованным до этого. Я начинаю изучать Python, и мне дается пример для написания. Одна вещь, которую я не понимаю, о нем, как% работает в данном конкретном примере ниже:Как работает% в Python

print 3 + 2 + 1 - 5 + 4 % 2 - 1/4 + 6 

я использовал основной порядок действий, чтобы разбить его немного

(3 + 2 + 1 - 5) + (4 % 2) - (1/4) + 6 
     1  + (4 % 2) - .25 + 6 
     1  + (4 % 2) -  6.25 

Где я Я застрял в том, как работает (4% 2). Чтение примера дальше по окончательному результату - 7, но я не вижу, как это получается. Я думаю, что проблема в том, как я читаю ее в своей голове. Любая помощь будет принята с благодарностью.

+0

Смотрите также https://docs.python.org/2/reference/expressions.html#binary-arithmetic -операции – DNA

+0

Черт возьми, я обрамлял такой приятный ответ, чтобы выяснить, что вопрос отмечен дублирующимся –

+1

@MohitBhasi, а затем в будущем искать обманы для вопросов, которые, очевидно, уже будут отвечать. –

ответ

0

Если вы проверяете 1/4 вы получите 0, а не 0.25. Потому что 1 и 4 являются ints.

In [42]: 1/4 
Out[42]: 0 

In [43]: 1.0/4 
Out[43]: 0.25 

так

(3 + 2 + 1 - 5) = 1 
(4 % 2) = 0 
(1/4) = 0 

и конечный результат будет

1 + 0 + 0 + 6 = 7 
+0

Спасибо, Роман, это гораздо больше смысла, чем просто указание на объяснение по модулю, например, людей, которые обозначили его как дубликат. Не осознавали, что они считались ints, так что было бы рассмотрено что-то кроме целого числа. Так что (4% 2) в основном выписывается, говоря (4 идет в 2) = 0 раз. Итак, (3% 11) на самом деле было бы 3? 3/11 = 0 3 - 0 = 3 Правильно? – BrianStoiber

+0

Нет, не 4 входит. 2 переходит в 4 с остатком 0. Модуль деления является целым остатком –

+0

Итак, 5% 2 = 1, правильно? – BrianStoiber

0

% Оператор modulo дает остальную часть деления.

например.

>>> 5%3 
2 
>>> 15%3 
0 
>>> 

/ Оператор деления работает как:

целое значение, деленное на целое значение дают целое не плавали (1/4 = 0,25)

>>> 1/4 
0 
>>> 1.0/4 
0.25 
>>> 1/4.0 
0.25 
>>> 1.0/4.0 
0.25 
>>> 
+0

Это объясняет ints. Спасибо. Прошло около 10 лет с тех пор, как C++ 101 вернулся в колледж и просто пытался узнать что-то новое. – BrianStoiber

Смежные вопросы