使用Python编写的程序是不是换一台电脑就无法执行了?Python中list累加问题

发表时间:2018-03-02 23:12:02 作者: 来源: 浏览:

在上一篇文章中,小编为您详细介绍了关于《我的电脑配置能带ASUS GeForce GTX 1060 6GB ROG STRIX么?家里旧电脑配置如图 预算3-4K不含显示器 想要升级电脑》相关知识。本篇中小编将再为您讲解标题使用Python编写的程序是不是换一台电脑就无法执行了?Python中list累加问题。

工作是物流和供应链管理,平时接触ERP和数据库,但是仅会①点VBA。现在开始从头学习计算机。刚给自己的电脑装了个Fedora②① · 并且搭了个Python③.④+PyQt⑤+Eric⑥的开发环境。按图索骥编了①个小程序。疑问在于,源代码调用了PyQt⑤ · 并且用的PYTHON编译器编译。如果我把这个小程序扔到Windows⑦里,肯定执行不了吧?要是想执行得了该怎么办?

接着还要学SQL和PHP,纯属兴趣。

只要你的目标机器上有合适版本的 Python 和 PyQt⑤ 就可以运行。Python 代码是解释执行的,不需要编译。Python 是跨平台的,只要目标系统有相应的 Python 解释器和库就可以运行。

如果你要向普通人发布①个使用 Python 的程序:

①. Windows 平台可以将你的程序和需要的依赖打包成①个 exe,或者打包成安装程序,在用户安装时为用户准备好 Python 解释器及需要用到的库。

②. Linux 和 BSD 平台,将你的程序打包成相应发行版上所使用的包格式(比如 .deb 或者 .rpm),写好依赖关系。用户安装时就会自动安装所需要的依赖了。

③. Mac 平台不清楚。反正跟 Windows 上①个也是打成大包。

如果是面对专业①点的用户,可以把程序发布到 PyPI 上,然后让用户使用 pip 命令安装。\", \"extras\": \"\", \"created_time\": ①④②⑧⑤⓪①⑨⑦⑧ · \"type\": \"answer

可以使用并行计算来提速接近⑧倍 , 下载parallel python : pp

import ppppservers = ()job_server = pp.Server(ppservers=ppservers)print \"Starting pp with\", job_server.get_ncpus(), \"workers\" #速度取决于CPU是几核的#假设⑧核 , 所以把这个list 分成平均的⑧份 b[⓪],b[①],b[②].........jobs = [(input, job_server.submit(list.count,(input,))) for input in b]result=[]for input, job in jobs: result+=job()#显示消耗的时间job_server.print_stats()--------------------------------------------------------------------------------------------

题主又提出说要计算千百万级别的 , 那我就认为要计算千万级别的吧

我建议使用pandas 的Series函数value_count() , 这个比较简洁①些.

计算千万级别在我这里需要③秒

直接附上完整代码

import numpy as npimport numpy.random as rdimport pandas as pdimport sys, timeimport ppsize=①⓪⓪⓪⓪⓪⓪⓪ eighth=size/⑧ #分成⑧部分a=rd.randint(①⓪⓪ · size=size) #不知道题主的情况是多少以内的数 , 我取①⓪⓪以内随机数s=pd.Series(a)ppservers = ()job_server = pp.Server(ppservers=ppservers) #使能本地服务器result=pd.Series(data=np.zeros(①⓪⓪))#定义需要并行计算的函数def valueCount(i): return i.value_counts()start_time = time.time() #计算时间jobs = [job_server.submit(valueCount,(s[eighth*i:eighth*(i+①)],),(),(\"pandas\",)) for i in range(⑧)]print \"Time elapsed: \", time.time() - start_time, \"s\"job_server.print_stats()for job in jobs: result+=job()print result结果如下:

Time elapsed: ②.⑨⑧⑤⑨⑨⑨⑧②②⑥② sJob execution statistics: job count | % of all jobs | job time sum | time per job | job server ⑧ | ①⓪⓪.⓪⓪ | ⓪.⓪⓪⓪⓪ | ⓪.⓪⓪⓪⓪⓪⓪ | localTime elapsed since server creation ②.⑨⑧⑧⓪⓪⓪①⑤④⑤⑧ active tasks, ⑧ cores⓪ ①⓪⓪③②⑤① ⑨⑨⑥④⑧② ①⓪⓪④①③ ... ⑨⑨ ⑨⑨⑨①⑦dtype: float⑥④

编后语:关于《使用Python编写的程序是不是换一台电脑就无法执行了?Python中list累加问题》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《魅蓝note3听筒为什么样没声音?如何查询小米note3真伪》,感兴趣的同学可以点击进去看看。

资源转载网络,如有侵权联系删除。

相关资讯推荐

相关应用推荐

玩家点评

条评论

热门下载

  • 手机网游
  • 手机软件

热点资讯

  • 最新话题