मुझे पता है क्यों यह विफल रहता है की जरूरत है:पायथन टुपल्स और सूचियां। एक टपल मना कर दिया कि कन्वर्ट करने के लिए
class ConfigurationError(Exception):
def __init__(self, *args):
super(ConfigurationError, self).__init__(self, args)
self.args = list(args)
# Do some formatting on the message string stored in self.args[0]
self.args[0]=self.__prettyfi(self.args[0])
def __prettyfi(self, arg):
pass
# Actual function splits message at word
# boundaries at pos rfind(arg[1:78]) if len(arg) >78
# it does this by converting a whitespace char to a \n
जब मैं कोड चलाने के लिए, मैं निम्नलिखित संदेश प्राप्त करते हैं: <snip> ConfigurationError.py", line 7, in __init__ self.args[0]=self.__prettyfi(self.args[0]) TypeError: 'tuple' object does not support item assignment
मैं लाइन नहीं संपादित। इस कोड नमूना से मेल खाते हैं।
मुझे समझ नहीं आता क्यों self.args = list(args)
सही ढंग से लाइन पर सूची में टपल खोल नहीं करता 5.
(मैं एक चुपके संदेह मैं कुछ सुपर बुनियादी याद करने में नाकाम रहने रहा हूँ ...)
क्या कोई तकनीकी कारण है कि यह एक वर्णक है? –
@ टिनक्टरियस: अपवाद अपरिवर्तनीय हैं, और 'तर्क' भी होना चाहिए। इसके अलावा, 'Exception.args' को एक टुपल के रूप में प्रलेखित किया गया है। –
grrrrrrrrrrrr ... धन्यवाद। लूप के लिए बीमार लगता है तो इसे अनपैक करें। जब तक कि कोई बेहतर तरीका नहीं जानता ....? – Jase