मैं देख रहा हूँ मैं नहीं कर सकता:पायथन में स्ट्रिंग्स में बुलियन कैसे स्वरूपित होते हैं?
"%b %b" % (True, False)
अजगर में
। मैंने बी (ओलेन) के लिए %b
अनुमान लगाया। क्या ऐसा कुछ है?
मैं देख रहा हूँ मैं नहीं कर सकता:पायथन में स्ट्रिंग्स में बुलियन कैसे स्वरूपित होते हैं?
"%b %b" % (True, False)
अजगर में
। मैंने बी (ओलेन) के लिए %b
अनुमान लगाया। क्या ऐसा कुछ है?
>>> print "%r, %r" % (True, False)
True, False
यह बूलियन मूल्यों के लिए विशिष्ट नहीं है - %r
तर्क पर __repr__
प्रणाली को बुलाती है। %s
(str
के लिए) भी काम करना चाहिए।
'% r' और'% s' के बीच बड़ा अंतर क्या है? – Stallman
मुझे हमेशा इस विकृति को दिमाग में था, लेकिन अगर मैं गलत हूं तो मुझे सही करें। % s (और इस प्रकार str()) उद्देश्य के लिए मनुष्य के रूप में संभवतः वस्तु के रूप में प्रतिनिधित्व करने का लक्ष्य है। % r (और इस प्रकार repr()) उद्देश्य ऑब्जेक्ट को पाइथन के लिए यथासंभव पारदर्शी रूप से प्रस्तुत करना है। उदाहरण के लिए, 'प्रिंट (str ("foo"))' केवल एक नई पंक्ति पर प्रिंट 'foo'। 'प्रिंट (repr (" foo ")) हालांकि उद्धरण समेत एक नई पंक्ति पर 'foo'' प्रिंट करता है, क्योंकि पाइथन में तर्क के लिए संबंधित ऑब्जेक्ट प्राप्त करने के लिए आपको पाइथन दुभाषिया में टाइप करने की आवश्यकता होती है। – bobismijnnaam
आप True False
उपयोग करना चाहते हैं:
"%s %s" % (True, False)
क्योंकि str(True)
है 'True'
और str(False)
'False'
है।
या आप 1 0
उपयोग करना चाहते हैं:
"%i %i" % (True, False)
क्योंकि int(True)
है 1
और int(False)
0
है।
तुम भी उपयोग कर सकते हैं स्ट्रिंग
print "{0} {1}".format(True, False);
print "{0:} {1:}".format(True, False);
print "{0:d} {1:d}".format(True, False);
print "{0:f} {1:f}".format(True, False);
print "{0:e} {1:e}".format(True, False);
इन की Formatter class परिणाम
True False
True False
1 0
1.000000 0.000000
1.000000e+00 0.000000e+00
%
-format प्रकार विनिर्देशक में से कुछ (%r
, %i
) कर रहे हैं उपलब्ध हैं नहीं। विवरण के लिए Format Specification Mini-Language
ध्यान दें कि फ़ॉर्मेटिंग विकल्प जोड़ना [इसे स्क्रू कर सकता है।] (Http://stackoverflow.com/q/36573222/241211) उदा। '{: _^5} 'आपको' __1 __ '' मिलेगा जब तक कि आप 'str (...)' बूलियन नहीं करते। – Michael
आप [आस-पास] [https://stackoverflow.com/a/48326865/241211) टाइप कर सकते हैं जैसे '! S': '' {! S: _^5} 'प्रारूप (सत्य)' 'True_'' है – Michael
आप परिणाम क्या चाहते हैं? सही और गलत? आप तब '% s' चाहते हैं। % बी, जब यह मौजूद है, बाइनरी के लिए है (बेस -2 में)। –
हो हाँ! "% s" बस ठीक काम करता प्रतीत होता है। इस सवाल का जवाब दें और एक व्याख्यान उत्तर प्राप्त करें। मैं "% s"% str (झूठी) करता था। मुझ पर शर्म आती है :) –
प्रासंगिक दस्तावेज से लिंक: http://docs.python.org/library/stdtypes.html#string-formatting-operations – bernie