मैं एक फ़्लोटिंग पॉइंट नंबर को सुंदर रूप से स्वरूपित कर रहा हूं लेकिन यदि कोई प्रासंगिक फ़्लोटिंग पॉइंट नंबर नहीं है तो यह एक पूर्णांक के रूप में दिखाई देना चाहता है।फ़्लोटिंग पॉइंट घटक नहीं है तो केवल दशमलव बिंदु दिखाएं .00 sprintf/printf
आईई।
- 1,20 -> 1.2x
- 1.78 -> 1.78x
- 0.80 -> 0.8x
- 2.00 -> 2x
मैं regex का एक सा के साथ इस लक्ष्य को हासिल कर सकते हैं लेकिन क्या सोच रहा है कि sprintf
है - ऐसा करने का एकमात्र तरीका?
मैं बहुत की तरह गहरे लाल रंग का में नहीं बल्कि lazily यह कर रहा हूँ:
("%0.2fx" % (factor/100.0)).gsub(/\.?0+x$/,'x')
4 साल बाद तार के बजाय संख्या हो और मैंने महसूस किया कि Regexp आसानी से भ्रामक है। '.gsub (/ (\। 0 +)? x /, 'x')' शायद बेहतर है ... –