จะคำนวณ mod b ใน Python อย่างไร?


151

มีฟังก์ชั่น modulo ในmathห้องสมุดPython หรือไม่

ไม่ใช่15 % 4เหรอ แต่15 mod 4เป็น 1 จริงไหม


6
3 เท่ากับ 15 mod 4.
Paul Fisher

2
คุณอาจคิดว่า (15 4 สมัย = -1) ซึ่งเป็นเช่นเดียวกับคำพูด (15 4 สมัย = 3)
นาธาน Fellman

16
ระวัง: (-41)% 3 == -2 ใน C แต่ (-41)% 3 == 1 ใน Python stackoverflow.com/questions/828092/…
jfs

คำตอบ:


240

มี%ป้ายบอกทาง มันไม่ได้เป็นแค่ส่วนที่เหลือมันเป็นการดำเนินการแบบโมดูโล




25

mod = a % b

นี้จะจัดเก็บผลมาจากในตัวแปรa mod bmod

และคุณถูกต้อง15 mod 4คือ 3 ซึ่งก็คือสิ่งที่หลามกลับมา:

>>> 15 % 4
3

a %= b ถูกต้องเช่นกัน



5

ฉันไม่คิดว่าคุณจะเข้าใจโมดูโลอย่างเต็มที่ a % bและa mod bเป็นเพียงสองวิธีในการแสดงโมดูโล %ในกรณีนี้ใช้งูหลาม ไม่มี15 mod 4ไม่ได้,115 % 4 == 15 mod 4 == 3


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.