[英]Syntax for Greatest Common Divisor - Python
下面的程序比我的更精確、更短,因此更具吸引力。 我理解 mod (%),但注意到的行上的其余語法讓我感到困惑。 有誰知道這個語法叫什么或者它是如何工作的?
這個問題要求創建一個函數來找到兩個整數的最大公約數 (gcd),這是將兩個數字相除而沒有余數的最大數。
例如20和12的gcd是4。
def gcd(x, y):
while y != 0:
(x, y) = (y, x % y) ## What is happening here? What's this syntax called?
return x
鏈接到我找到這個程序的地方: How to calculate a mod b in python?
非常感謝你的幫助!
你偶然發現了元組賦值!
簡而言之,在python中,您可以分配變量組,只要您從具有相同格式的結構中分配它們
這是正在發生的事情的簡單說明:
a,b = 3,5
#a is now equal to 3 and b is now equal to 5
#You literally could go:
# a = 3
# b = 5
#And it would be logically equivalent
a+b
退貨
>>>8
在您的函數中,您將 y 的值(函數的第二個參數)分配給變量 x,並將 y 的值更新為 x/y 的余數。
我希望這有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.