关于Python中逗号及其含义的问题

我希望有人能解释“n”和“digit”之间的逗号的作用。


while n > 0:

     n, digit = divmod(n, 10)

     total_sum = total_sum + digit ** 2

return total_sum

我见过逗号在其他情况下使用,并且一直认为,在这种情况下,它意味着 n 和 digital 等于 divmod(n, 10)。我试图查看代码是否仍然有效,但它不起作用,所以情况似乎并非如此。谁能解释一下n和数字之间的逗号表示什么?


当年话下
浏览 132回答 5
5回答

一只名叫tom的猫

Python赋值语句不仅支持单独赋值,还支持对目标列表的赋值。这通常称为解包,因为骑行端可迭代的元素被提取并分配给目标列表的名称。>>> a, b = 1, 2>>> print(a)1>>> a, b = range(2)>>> print(a)0具体来说,该divmod(a, b)函数返回一个 的元组a // b, a % b。分配给两个目标会将每个项分配给一个单独的变量。>>> div, mod = divmod(1024, 10)>>> print(div)102>>> print(mod)4

回首忆惘然

divmod返回两个数字的元组(除数和余数)。使用逗号语法允许您将这些数字分配给两个不同的变量。

动漫人物

n 是商,digit 是余数。让我举个例子n=25其他的是10商 = 2余数 = 5

Helenr

divmod 是除法和模式,它返回除法的结果和数字的余数(这里n是数字,10是除数)n, digit = divmod(10,3)n = 3digit = 110除以3,结果是3,余数是1

桃花长相依

它翻译为:“我希望该divmod函数返回的内容n恰好有两个部分,通过将这两个部分放入名为和的变量中可以节省一些时间digit”。返回divmod两个数字。虽然你可以这样做:x = divmod(n, 10)n = x[0]digit = x[1]上面的一行字要好得多。另外,你可以做这样的事情:ls = ["myValue"](value,) = lsprint(value) #prints: myValue从具有单个元素的列表中解压缩值。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python