The big difference is that the entire Node.js ecosystem is built around async code. With Tornado if you use a library like an XML parser, which loads in external content via entities or xinclude, those will be loaded synchronously and block your event loop. Similarly for all kinds of other libraries in the Python ecosystem which have been designed around the assumption that everything is synchronous. I had exactly this problem when building async code in Perl, which suffers from the same assumptions.
Also the engine behind Node, V8, is significantly faster than the Python engine.