python - Incomprehensible error with three print following -


मेरे पास परिभाषा के रूप में एक परिभाषा है:

  एसएन = {} एस एन [0] = {'क्रिया': 1}  

मेरे फ़ंक्शन में मैं 3 प्रिंट s निम्न प्रकार से करता हूं:

  प्रिंट ग्राफ प्रिंट राज्य प्रिंट ग्राफ [राज्य]  

(मैं इन चर के साथ और कुछ नहीं करता) और यह देता है:

  एस एन 0 एस   

यह कैसे संभव है?

  एसएन 0 {'क्रिया': 1}  

पूरे कोड:

  अमूर्त = '' '' '' '' '' '' '' '' '' '' '' '' अमृत ' ['एडॉसिफ', 'सोलिफ'] अमूर्त ['व्यापारी'] = ['adjectif'] ['adjectif'] ['adjectif'] ['adjectif'] ['adjectif'] = ['adjectif', 'substantif'] अमूर्त ['भव्य'] = ['adjectif' ['एडीजेफ', 'सोलिफ'] अमूर्त ['डेसिन'] = ['सदाबहार']] [अमूर्त] '' लूप '] = [' पॉटिफ '] अमूर्त [' पाउलेट '] = [' सोलिफ '] अमूर्त [' गोस '] = ["एनआइमपोर्ट क्वॉई"] अमूर्त [' मांगे '] = [' वर्बे '] अमूर्त ['डॉर्ट'] = ['वर्बे'] एसएन = {} एस एन [0] = {'डेरमिरमैनंट': 1} एस एन [1] = {'एडजेक्स': 1, 'लाफिफ़': 2} एस एन [2] = {'Adjectif': 3, '': 'ok'} एस एन [3] = {'': '' ठीक है) एसवी = {} एसवी [0] = {'वर्बे': 1} एसवी [1] = { संक्रमण ':' एसएन ',' ':' ठीक '} एसवी [2] = {' ':' ठीक '} डी अगर आंकड़े: यदि 'ग्राफ' में परिवर्तन '[बदलाव]' होता है: वापसी बदलाव (डेटा, ग्राफ़ [राज्य] [एफटी संक्रमण] (आंकड़े, ग्राफ, राज्य = 0, पारगमन = []) 'संक्रमण'], 0, पारगमन) प्रतीक = डेटा [0] यदि चिह्न को अमूर्त में नहीं। कीट (): अमूर्त में ['असंभव, अन डेस माट्स एन \' एट पास रिकन्यू पैरा एल \ 'ऑटोमेट'] [प्रतीक]: पृथक्करण पर # लूप प्रिंट ग्राफ प्रिंट राज्य प्रिंट ग्राफ [राज्य] यदि ग्राफ में [राज्य]: राज्य = ग्राफ [राज्य] [ए] वापसी संक्रमण (डेटा [1:], ग्राफ, राज्य, पारगमन + ['असंभव'] और: यदि 'ग्राफ में [राज्य]: वापसी पारगमन + [आलेख [राज्य] [']] और: वापसी पारगमन + ['असंभव' ]  

मुझे लगता है कि आपकी समस्या यहां है टी ग्राफ == "एसएन" , (जैसा कि आपको जाहिरा तौर पर उम्मीद है) के बजाय ग्राफ == एसएन

इसे किसी अन्य तरीके से रखने के लिए, ग्राफ एक str ऑब्जेक्ट मान "SN" , नहीं dict वस्तु भी नाम <कोड> एसएन द्वारा संदर्भित है।

इसलिए आलेख [0] पहला है स्ट्रिंग "SN" में वर्ण, जो कि अक्षर "S" है

इस मामले में ग्राफ == एसएन ,

  प्रिंट ग्राफ प्रिंट राज्य प्रिंट ग्राफ [राज्य]   होगा: 

  {0: {'क्रिया': 1}} # नोट: नहीं 'एस एन' 0 {'क्रिया': 1}    

संपादित करें :

अब जब आपने अपना कोड पोस्ट किया है, यह अनुभाग:

  SN = {} एसएन [0] = {'डेरमिरींटेंट': 1} एस एन [1] = {'एडजेक्सफ': 1, 'सोलिफ़': 2} एस एन [2] = {'एडजेक्सि: 3,' ':' ओके '} एसएन [3] = {'': 'ठीक है'}  

एक शब्दकोश बनाता है

  एस एन = {0: {'डेरमिनेन्ट': 1}, 1 : {'Adjectif': 1, 'substantif': 2}, 2: {'adjectif': 3, '': 'ठीक'}, 3: {'': 'ठीक है'}}  

हालांकि, अगले भाग में:

  एसवी [1] = {'संक्रमण': 'एसएन', '': 'ठीक'}  

आप स्ट्रिंग 'एसएन' कुंजी 'संक्रमण' को निर्दिष्ट करें, न कि वास्तविक शब्दकोश एसएन । यह होना चाहिए था:

  एसवी [1] = {'संक्रमण': एसएन, '': 'ठीक'} # ^ कोई उद्धरण चिह्नों  

इसके अलावा, आपकी सारी चाबियाँ शून्य से शुरू होने वाले पूर्णांक के रूप में, आप एक शब्दकोश की बजाय एक सूची का उपयोग करने पर विचार कर सकते हैं, उदाहरण के लिए:

  SN = [] SN.append ({'déterminant': 1 }) SN.append ({'adjectif': 1, 'substantif': 2}) ...  

Comments

Popular posts from this blog

import - Python ImportError: No module named wmi -

Editing Python Class in Shell and SQLAlchemy -

c# - MySQL Parameterized Select Query joining tables issue -