https://www.cnblogs.com/wuxie1989/p/5710757.html https://www.cnblogs.com/wuxie1989/p/5710757.html http://python.jobbole.com/85056/