मेरे पास एक LaTeX फ़ाइल है जिसे मैं पाइथन 3 के साथ पढ़ना चाहता हूं और परिणामी स्ट्रिंग में मान को प्रारूपित करना चाहता हूं। की तरह कुछ:उस स्ट्रिंग को प्रारूपित करें जिसमें
...
\textbf{REPLACE VALUE HERE}
...
लेकिन मैं कैसे स्ट्रिंग स्वरूपण करने के नए रास्ते के बाद से यह करने के लिए यह पता लगाने की नहीं कर पाए हैं {val}
संकेतन का उपयोग करता है और क्योंकि यह एक LaTeX दस्तावेज है, वहाँ अतिरिक्त {}
पात्रों की टन कर रहे हैं।
मैं की तरह कुछ की कोशिश की है:
'\textbf{This and that} plus \textbf{{val}}'.format(val='6')
लेकिन मैं मिल
KeyError: 'This and that'
कोई सुराग चाहे स्ट्रिंग। भविष्य में टेम्पलेट को बहिष्कृत किया जाएगा? नया पायथन 3 {} स्वरूपण में यह शामिल है। लाटेक्स संपादन के लिए हालांकि टेम्पलेट्स अधिक सुविधाजनक हैं। – levesque
@levesque: ठीक है, इसे 3.4 लंबित (लंबित) के रूप में बहिष्कृत नहीं किया गया है, और यह '{}' स्वरूपण से अलग कार्यक्षमता प्रदान करता है, इसलिए मुझे लगता है कि यह थोड़ी देर तक टिकेगा। – DSM
रेगेक्स का उपयोग करने के बजाय अतिरिक्त ब्रेसिज़ जोड़ने के लिए संभावित रूप से अच्छा तरीका 'str.translate' के साथ है। 'unformatter = str.maketrans ({'{': '{{', '}': '}}'}) ', फिर किसी दिए गए स्ट्रिंग को ठीक करने के लिए,' goodstring = badstring.translate (unformatter)' (नोट: द प्रश्न 2.x पर पायथन 3.x के बारे में है, यह केवल 'यूनिकोड' के साथ काम करेगा, न कि 'str', क्योंकि केवल' यूनिकोड '1-n अनुवाद मैपिंग का समर्थन करता है।) – ShadowRanger