簡體   English   中英

最大公約數的語法 - Python

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM