के लिए जेनरेटर ऑब्जेक्ट को सूची में कनवर्ट करें जब मैं आईपथन का उपयोग करके पाइथन में डिबगिंग कर रहा हूं, तो मैंने कभी-कभी ब्रेक-पॉइंट मारा और मैं एक वैरिएबल की जांच करना चाहता हूं जो वर्तमान में जनरेटर है। ऐसा करने का सबसे आसान तरीका मैं इसे एक सूची में परिवर्तित कर रहा हूं, लेकिन मुझे यह नहीं पता कि ipdb
में एक पंक्ति में ऐसा करने का एक आसान तरीका क्या है, क्योंकि मैं पाइथन के लिए इतना नया हूं।डीबगिंग
Q
डीबगिंग
60
A
उत्तर
102
जनरेटर पर बस list
पर कॉल करें।
lst = list(gen)
lst
ध्यान रखें कि यह जेनरेटर को प्रभावित करता है जो किसी और आइटम को वापस नहीं करेगा।
आप आईपीथन में सीधे list
पर भी कॉल नहीं कर सकते हैं, क्योंकि यह कोड की सूची रेखाओं के लिए एक आदेश के साथ संघर्ष करता है।
इस फाइल पर परीक्षण किया गया:
def gen():
yield 1
yield 2
yield 3
yield 4
yield 5
import ipdb
ipdb.set_trace()
g1 = gen()
text = "aha" + "bebe"
mylst = range(10, 20)
जो जब रन:
$ python code.py
> /home/javl/sandbox/so/debug/code.py(10)<module>()
9
---> 10 g1 = gen()
11
ipdb> n
> /home/javl/sandbox/so/debug/code.py(12)<module>()
11
---> 12 text = "aha" + "bebe"
13
ipdb> lst = list(g1)
ipdb> lst
[1, 2, 3, 4, 5]
ipdb> q
Exiting Debugger.
समारोह/चर/डिबगर नाम से बचने के लिए सामान्य विधि का विरोध करता
डिबगर आदेश p
और pp
रहे हैं कि print
और prettyprint
उनके बाद कोई अभिव्यक्ति होगी।
$ python code.py
> /home/javl/sandbox/so/debug/code.py(10)<module>()
9
---> 10 g1 = gen()
11
ipdb> n
> /home/javl/sandbox/so/debug/code.py(12)<module>()
11
---> 12 text = "aha" + "bebe"
13
ipdb> p list(g1)
[1, 2, 3, 4, 5]
ipdb> c
भी एक exec
आदेश, !
के साथ अपने अभिव्यक्ति है, जो डिबगर बलों अजगर एक के रूप में अपने अभिव्यक्ति लेने के लिए लगाकर से बुलाया नहीं है: इस प्रकार
तो आप इसे इस्तेमाल कर सकते हैं। जब डीबगर में
ipdb> !list(g1)
[]
अधिक जानकारी के लिए help p
, help pp
और help exec
देखते हैं।
ipdb> help exec
(!) statement
Execute the (one-line) statement in the context of
the current stack frame.
The exclamation point can be omitted unless the first word
of the statement resembles a debugger command.
To assign to a global variable you must always prefix the
command with a 'global' command, e.g.:
(Pdb) global list_options; list_options = ['-l']
संबंधित मुद्दे
- 1. डीबगिंग
- 2. डीबगिंग
- 3. डीबगिंग
- 4. डीबगिंग
- 5. डीबगिंग
- 6. डीबगिंग
- 7. डीबगिंग
- 8. पीईडीवी डीबगिंग:
- 9. दूरस्थ डीबगिंग
- 10. डीबगिंग इरादे
- 11. डीबगिंग मोनिट
- 12. रिमोट डीबगिंग
- 13. 403 डीबगिंग?
- 14. Parsec डीबगिंग
- 15. डीबगिंग। ब्रेकपॉइंट्स
- 16. डीबगिंग .xccrashpoint
- 17. एक्सकोड डीबगिंग
- 18. QtWebEngine डीबगिंग
- 19. नेटलोगो डीबगिंग
- 20. डीबगिंग SharePoint 2007 कोड
- 21. डीबगिंग हैडऑप अनुप्रयोग
- 22. विंडबग कर्नेल डीबगिंग
- 23. एएसपीनेट डीबगिंग अचानक
- 24. पायथन: मेमोरी लीक डीबगिंग
- 25. रिमोट डीबगिंग प्रबंधित अनुप्रयोग
- 26. सर्वर पर रिमोट डीबगिंग
- 27. एएसपी.नेट एमवीसी स्रोत डीबगिंग?
- 28. रिमोट डीबगिंग क्लाइंट कंप्यूटर
- 29. स्टेटेट डीबगिंग टूल
- 30. NetBeans वैरिएबल वैल्यू डीबगिंग