मैंने पाया है कि 10.0 क्षेत्र में कैलकुलेटर काफी अजीब है।
लेकिन मैं इसे पाने में कामयाब रहा हूं। मुख्य विचार एकल उद्धरण के साथ फ़ील्ड नाम को संलग्न करना है।
उदाहरण। लगता है हम क्षेत्रों डालते हैं text1
और text2
। text2
अभिव्यक्ति के साथ फ़ील्ड की गणना करने के बजाय !text1!
, जो संभवतः विफल हो जाएगा, इसे आज़माएं '!text1'
:। जैसा कि आप देख रहे हैं कि मैं यहाँ सिंगल कोट्स का उपयोग कर रहा हूँ।
तो, अपने काम पर वापस। प्री-लॉजिक स्क्रिप्ट कोड का उपयोग करना अधिक स्पष्ट होगा:
def calc(value):
return value.replace('"', '')
अभिव्यक्ति होगी:
calc('!text1!')
मुझे उम्मीद है कि यह आपके लिए काम करेगा।
मैंने आगे प्रयोग नहीं किया है, लेकिन मुझे लगता है कि ऐसा अजीब व्यवहार होता है क्योंकि फ़ील्ड गणना को आर्कटबॉक् ट टूल में कॉल किया जाता है CalculateField_management
और अभिव्यक्ति को एक पैरामीटर के रूप में प्रदान किया जाता है (संभवतः इसके अलावा एकल या दोहरे उद्धरण के साथ संलग्न)।
अपडेट करें:
यदि क्षेत्र के मूल्यों में एकल उद्धरण हैं, तो मेरा पिछला समाधान विफल हो जाएगा text1
।
अब मैं इसे प्राप्त करने में कामयाब रहा हूँ जब किसी विशेषता में किसी भी मूल्य के अंदर वर्ण '
और "
(एकल और दोहरे उद्धरण) दोनों हों text1
।
यहां अभिव्यक्ति है, जो मूल स्ट्रिंग लौटाएगा, दोनों प्रकार के उद्धरणों का समर्थन करेगा:
'''!text1!'''[1:-1]
आपके कार्य के लिए इसे (प्री-लॉजिक स्क्रिप्ट कोड के बिना) बढ़ाया जा सकता है:
'''!text1!'''[1:-1].replace('"', '')
!testing![1:len(!testing!)-1]