2012-03-05 7 views
5

मैं हाल ही में web.py के साथ गड़बड़ कर रहा हूं और एक डीबी से कुछ सामान लेना चाहता हूं और यह मुझे "स्टोरेज" ऑब्जेक्ट लौटा रहा है। एक कोड मैं अपने कॉल करने के लिए जानकारी का उपयोग कर रहा है:web.py डेटाबेस का उपयोग करें

db = web.database(dbn='sqlite', db='sqlfile.sqlite') 
sely = db.select('carp', order="id ASC") 

जब sely यह मुझे इतना की तरह बाहर चला जाता है पाठ चलाता है:

<Storage {'lvl': 0, 'symbol': u'formb', 'logged': u'false', 'id': 1, 'display': u'Classic'}>

जब आप प्रिंट आउट sely भंडारण लाइन बाहर आता है। मैं इस वस्तु से शब्दकोश कैसे प्राप्त कर सकता हूं?

उत्तर

4

अज्ञात एपीआई से निपटने के लिए एक सामान्य पायथन चाल dir builtin का उपयोग करना है। दुभाषिया में dir(sely) आज़माएं ताकि यह देखने के लिए कि आपके द्वारा प्राप्त ऑब्जेक्ट के लिए सदस्य चर और फ़ंक्शंस को परिभाषित किया गया है।

  • आप __iter__ की तरह कुछ देखते हैं, आप list(sely) फोन एक सूची के लिए परिणाम कन्वर्ट करने के लिए कर सकते हैं, और आम तौर पर एक पाश में वस्तु पर पुनरावृति।
  • यदि आप __getitem__ जैसे कुछ देखते हैं, तो आप ऑब्जेक्ट में इंडेक्स कर सकते हैं और एक मूल्य वापस पाने की उम्मीद कर सकते हैं।

एक तरफ ध्यान दें के रूप में, मैं सिर्फ अपने कोड बाहर की कोशिश की और मैं sely प्राप्त एक web.utils.IterBetter उदाहरण होने के लिए (जो 0 पंक्तियों देता है, मेरे मामले में 3 की उम्मीद के बजाय)। इसलिए मैं वास्तव में आपकी समस्या का पुनरुत्पादन नहीं कर सकता (लेकिन बोलने के लिए खुद की समस्याएं हैं)।

+1

धन्यवाद सूची (sely) जिस तरह से मैं चाहता था काम किया – ATMA

3
db = web.database(dbn='sqlite', db='sqlfile.sqlite') 
sely = db.select('carp', order="id ASC").list() 

sely भंडार का एक list होगा, storagedict के रूप में ही है, लेकिन आप obj["key"] के बजाय obj.key के साथ बहस पहुँच सकते हैं,। storage को dict में कनवर्ट करने के लिए आप dict(obj) कर सकते हैं।

-1
खिड़कियों

return list(db.select('top',what='score',where="name = $id",vars=locals())

में

ठीक है। आप स्कोर का मूल्य प्राप्त कर सकते हैं।

लेकिन

ubuntu

में

आप इसे इस

db.select('top',what='score',where="name = $id",vars=locals())[0]["score"]

पसंद है shuld मैं क्यों नहीं पता है, लेकिन यह मेरे कंप्यूटर में काम करता है

संबंधित मुद्दे