On Friday, April 17, 2020 at 1:22:18 PM UTC-5, Adam Preble wrote: > At this point, my conceptual stack is empty. If I POP_TOP then I have nothing > to pop and the world would end. Yet, it doesn't. What am I missing?
Check out this guy replying to himself 10 minutes later. I guess IMPORT_FROM pushes the module back on to the stack afterwards so that multiple import-from's can be executed off of it. This is then terminated with a POP_TOP: >>> def import_from_multi(): ... from sys import path, bar ... >>> dis(import_from_multi) 2 0 LOAD_CONST 1 (0) 2 LOAD_CONST 2 (('path', 'bar')) 4 IMPORT_NAME 0 (sys) 6 IMPORT_FROM 1 (path) 8 STORE_FAST 0 (path) 10 IMPORT_FROM 2 (bar) 12 STORE_FAST 1 (bar) 14 POP_TOP 16 LOAD_CONST 0 (None) 18 RETURN_VALUE -- https://mail.python.org/mailman/listinfo/python-list