Значение использования запятых и символов нижнего подчеркивания с оператором присваивания Python?

Каждый раз, когда у меня были нечетные проблемы как это, я обычно сажусь с инструментом как WireShark и смотрю на необработанные данные, передаваемые назад и вперед. Вы могли бы быть удивлены, где вещи разъединяются, и Вы только , уведомил , когда Вы пытаетесь читать.

41
задан Bhargav Rao 2 June 2016 в 18:40
поделиться

3 ответа

d2, = values ​​[s] аналогично a, b = f () , за исключением распаковки кортежей из 1 элемента.

>>> T=(1,)
>>> a=T
>>> a
(1,)
>>> b,=T
>>> b
1
>>> 

a ] - кортеж, b - целое число.

37
ответ дан 27 November 2019 в 00:43
поделиться

_ похоже на любое другое имя переменной, но обычно оно означает «Меня не волнует эта переменная»

Второй вопрос: это «распаковка значения». Когда функция возвращает кортеж, вы можете распаковать его элементы.

>>> x=("v1", "v2")
>>> a,b = x
>>> print a,b
v1 v2
17
ответ дан 27 November 2019 в 00:43
поделиться

Символ _ в оболочке Python также относится к значению последней операции. Следовательно,

>>> 1
1
>>> _
1

Запятые относятся к распаковке кортежа. Что происходит, так это то, что возвращаемое значение является кортежем, и поэтому оно распаковывается по переменным, разделенным запятыми, в порядке элементов кортежа.

7
ответ дан 27 November 2019 в 00:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: