windows 下和 linux下python的效率差很大怎么回事?

因为window上面的Python一般是Cpython,用C语言编写的,深层有进程解释器锁,在硬件一般的情况下方便了不少,但是随着硬件的优化,进程锁成为了制约运行速度的枷锁,后来却很难去除了,所以人们也常常说CPython没有真正的多线程,CPython根本没有利用好电脑的多核设备,相比于其他语言,CPython只能利用单核...
windows 下和 linux下python的效率差很大怎么回事?
你在windows下用的idle吧,因为print要输出到stdout,idle里sys.stdout是直到窗口的,窗口是用tkinter写的,所以执行的时候执行的操作比cmdline/shell里要多得多。
我在windows的cmd里执行这个需要0.3秒,在idle里要3秒。2012-05-02
因为window上面的Python一般是Cpython,用C语言编写的,深层有进程解释器锁,在硬件一般的情况下方便了不少,但是随着硬件的优化,进程锁成为了制约运行速度的枷锁,后来却很难去除了,所以人们也常常说CPython没有真正的多线程,CPython根本没有利用好电脑的多核设备,相比于其他语言,CPython只能利用单核,肯定相对来说慢了很多。
但是Linux上面用的是JPython,用Java写的,没有进程锁这个累赘,肯定就快很多了。2020-04-10
效率上我觉得差不多吧,一定是你的windows的配置有问题吧,你在命令行下用timeit模块测试一下吧。前提是去掉大量的标准输入输出。2012-05-03
linux更轻吧2012-05-02
stdout太花时间。2012-05-04
mengvlog 阅读 9 次 更新于 2025-07-19 17:59:30 我来答关注问题0
檬味博客在线解答立即免费咨询

Python相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部