दिलचस्प पोस्ट
पता लगाएँ कि किस शाखा को एक स्थानीय शाखा ट्रैकिंग कर रही है जेएस में फ्लोट के बाइट्स पढ़ें / लिखें तेज क्या है, प्रकार पर स्ट्रिंग या एलेफ़ पर स्विच करें? अन्य सभी नियंत्रणों के ऊपर ओवरले नियंत्रण कैसे करें? MKMapView में प्रदर्शित एकाधिक एनोटेशन कॉलआउट एक पीएचपी फ़ाइल में सीधी पहुंच रोकें कार्य में अपवाद को पकड़ने का सबसे अच्छा तरीका क्या है? "हाँ" और "नहीं" विकल्प के साथ एक संवाद कैसे बनाएं? एक सरल वेब सर्वर के रूप में node.js का उपयोग करना पांडा मर्ज का प्रयोग करते समय सूचक को कैसे रखा जाए इनपुट पूरा होने पर स्कैनर को समाप्त कैसे करें? आप matplotlib के साथ आंकड़े विंडो की पूर्ण स्थिति कैसे निर्धारित करते हैं? डालें या हटाएं के बाद ओरेकल ट्रिगर अजगर में, जब एक शब्दकोश, सूची या सेट का उपयोग करें? एंड्रॉइड ऐप 0 डिवाइसों द्वारा समर्थित है

एक नंबर पर 'दशमलव चिह्न' हजारों विभाजक जोड़ें

पायथन में मैं 1000000 से 1.000.000 प्रारूप कैसे करूं? जहां '।' दशमलव चिह्न हजारों विभाजक है।

वेब के समाधान से एकत्रित समाधान "एक नंबर पर 'दशमलव चिह्न' हजारों विभाजक जोड़ें"

यदि आप एक हजार विभाजक जोड़ना चाहते हैं, तो आप लिख सकते हैं:

 >>> '{0:,}'.format(1000000) '1,000,000' 

लेकिन यह केवल पायथन 2.7 और उच्चतर में काम करता है।

प्रारूप स्ट्रिंग वाक्यविन्यास देखें

पुराने संस्करणों में, आप locale.format () का उपयोग कर सकते हैं:

 >>> import locale >>> locale.setlocale(locale.LC_ALL, '') 'en_AU.utf8' >>> locale.format('%d', 1000000, 1) '1,000,000' 

locale.format() का उपयोग करने का अतिरिक्त लाभ यह है कि यह आपके लोकेल के हजारों विभाजक का उपयोग करेगा, उदा

 >>> import locale >>> locale.setlocale(locale.LC_ALL, 'de_DE.utf-8') 'de_DE.utf-8' >>> locale.format('%d', 1000000, 1) '1.000.000' 

मैं वास्तव में इसे समझ नहीं आया; लेकिन यह है जो मैं समझता हूं:

आप 1123000 से 1,123,000 रूपांतरित करना चाहते हैं आप प्रारूप का उपयोग करके ऐसा कर सकते हैं:

http://docs.python.org/release/3.1.3/whatsnew/3.1.html#pep-378-format-specifier-for-thousands-separator

उदाहरण:

 >>> format(1123000,',d') '1,123,000' 

बस थोड़ा सा जवाब यहाँ विस्तार 🙂

मुझे एक हज़ार से अलग से विभाजित करने की जरूरत है और एक अस्थायी बिंदु संख्या की सटीकता को सीमित कर दिया गया है।

इसे निम्न स्वरूप स्ट्रिंग का उपयोग करके प्राप्त किया जा सकता है:

 > my_float = 123456789.123456789 > "{:0,.2f}".format(my_float) '123,456,789.12' 

यह format() -specifier की मिनी-भाषा का वर्णन करता है:

 [[fill]align][sign][#][0][width][,][.precision][type] 

स्रोत: https://www.python.org/dev/peps/pep-0378/#current-version-of-the-mini-language

itertools का उपयोग आपको कुछ अधिक लचीलापन दे सकता है:

 >>> from itertools import zip_longest >>> num = "1000000" >>> sep = "." >>> places = 3 >>> args = [iter(num[::-1])] * places >>> sep.join("".join(x) for x in zip_longest(*args, fillvalue=""))[::-1] '1.000.000' 

यहाँ केवल एक वैकल्पिक उत्तर है आप अजगर में विभाजन ऑपरेटर का उपयोग कर सकते हैं और कुछ अजीब तर्क के माध्यम से यहां कोड है

 i=1234567890 s=str(i) str1="" s1=[elm for elm in s] if len(s1)%3==0: for i in range(0,len(s1)-3,3): str1+=s1[i]+s1[i+1]+s1[i+2]+"." str1+=s1[i]+s1[i+1]+s1[i+2] else: rem=len(s1)%3 for i in range(rem): str1+=s1[i] for i in range(rem,len(s1)-1,3): str1+="."+s1[i]+s1[i+1]+s1[i+2] print str1 

उत्पादन

 1.234.567.890