2009-06-13 14 views
83

क्या पाइथन math लाइब्रेरी में कोई मॉड्यूलो फ़ंक्शन है?पायथन में एक मॉड बी की गणना कैसे करें?

15 % 4, 3 नहीं है? लेकिन 15 mod 4 1 है, है ना?

+4

3 बराबर 15 मॉड 4. –

+0

आप शायद सोच रहे हैं कि (15 mod 4 = -1) जो कहने जैसा ही है (15 mod 4 = 3) –

+12

सावधान रहें: (-41)% 3 == -2 सी में, लेकिन (-41)% 3 == 1 पायथन में http://stackoverflow.com/questions/828092/python-style-integer-division-modulus-in-c – jfs

उत्तर

133

% साइन है। यह सिर्फ शेष के लिए नहीं है, यह मॉड्यूलो ऑपरेशन है।

9

आप% का उपयोग क्यों नहीं करते?


print 4 % 2 # 0 
16

mod = a % b

यह चर mod में a mod b का परिणाम संग्रहीत करता है।

>>> 15 % 4 
3 

@Macarse:

और तुम ठीक कह रहे हैं, 15 mod 4 3 है, जो वास्तव में क्या अजगर रिटर्न है हाँ, पर यह सच है के लिए किसी भी \ = अजगर में निर्माण, तो मैं कोई सोचना चाहिए मॉड्यूलो के लिए अलग से इंगित करने की आवश्यकता है।

+1

नोट:% = b भी मान्य है । – Macarse

27
>>> 15 % 4 
3 
>>> 

मॉड्यूल पूर्णांक विभाजन के बाद शेष देता है।

35

आप भी divmod(x, y) जो एक टपल देता है की कोशिश कर सकते (x/y, x % y)

2

मुझे नहीं लगता कि आप पूरी तरह से सापेक्ष लोभी रहे हैं। a % b और a mod b मॉड्यूलो व्यक्त करने के लिए केवल दो अलग-अलग तरीके हैं। इस मामले में, पायथन % का उपयोग करता है। नहीं, 15 mod 41, 15 % 4 == 15 mod 4 == 3 नहीं है।

+0

यह नहीं होना चाहिए: 15% 4 == 15 mod 4 == 3? –

संबंधित मुद्दे