10

Я столкнулся с синтаксисом кода d //= 2 где d - переменная. Это не часть какого-либо цикла, я не совсем получаю выражение.
Может кто-нибудь просветить меня, пожалуйста?Что означает синтаксис «variable // = a value» в Python?

+1

Мы должны сделать это каноническим ответом и закрыть менее полезные слова [Две косые черты в Python] (http://stackoverflow.com/questions/14444520/two-forward-slashes-in-python) в качестве дубликата это. – smci

+0

Другой [ответ 2013 года] (http://stackoverflow.com/questions/14820104), который легко найти в [stackse] (http://stackse.com) с использованием ** python // = ** запроса. – ren

+0

google для оператора «python operator» –

ответ

26

// является оператором отдела пола. = рядом с ним означает работать с переменной «на месте». Это похоже на операторы += и *=, если вы видели их раньше, за исключением этого с разделением.

Предположим, у меня есть переменная, называемая d. Я установил его значение 65, вот так.

>>> d = 65 

Вызов d //= 2 будет делить d на 2, а затем назначить этот результат г. Так, d // 2 32 (32,5, но с десятичной части снятой), d становится 32:

>>> d //= 2 
>>> d 
32 

Это то же самое, как вызов d = d // 2.

+0

То же самое при этом обстоятельстве, но в целом это не обязательно то же самое. См. Https://docs.python.org/3/library/operator.html#operator.__floordiv__ vs. https://docs.python.org/3.4/library/operator.html#operator.__ifloordiv__. – glglgl

6

Он делит d на 2, округляя вниз. Python можно запустить в интерактивном режиме, попробуйте.

$ python 
Python 2.7.10 (default, Oct 23 2015, 19:19:21) 
>>> a = 4 
>>> a //= 2 
>>> a 
2 
+4

'a = 5' был бы лучшим примером. (В отличие от 'a/= 2') –

4

Разделяет переменную с делением пола на два и присваивает новую величину переменной.

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

  • Нет связанных вопросов^_^