python执行速度

1.Python 语言为什么执行速度相当慢

java和c都是编译型语言,一个是解释型语言。

编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。

解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。

当然更多的是与算法有关而不是语言。你python代码换成这个看看,速度是不是比你快多了

def primes1(n):

""" Returns a list of primes < n """

sieve = [True] * (n/2)

for i in xrange(3,int(n**0.5)+1,2):

if sieve[i/2]:

sieve[i*i/2::i] = [False] * ((n-i*i-1)/(2*i)+1)

return [2] + [2*i+1 for i in xrange(1,n/2) if sieve[i]]

import time

start = time.time()

a = primes1(4000000)

end = time.time()

print a

print 'used time:' end-start

2.python运行速度慢怎么办

yxhtest7772017-07-18

关注

分享

 697  2

python运行速度慢怎么办?6个Python性能优化技巧

Python是一门非常酷的语言,因为很少的Python代码可以在短时间内做很多事情,并且,Python很容易就能支持多任务和多重处理。

Python的批评者声称Python性能低效、执行缓慢,但实际上并非如此:尝试以下6个小技巧,可以加快Python应用程序。

关键代码可以依赖于扩展包

Python使许多编程任务变得简单,但是对于很关键的任务并不总是提供最好的性能。使用C、C++或者机器语言扩展包来执行关键任务能极大改善性能。这些包是依赖于平台的,也就是说,你必须使用特定的、与你使用的平台相关的包。简而言之,该解决方案提供了一些应用程序的可移植性,以换取性能,您可以获得只有通过直接向底层主机编程。

下面这些扩展包你可以考虑添加到你的个人扩展库中:

Cython

PyInlne

PyPy

Pyrex

这些包有不同的作用和执行方式。例如,Pyrex 让Python处理一些内存任务变得简单高效;PyInline可以直接让你在Python应用程序中使用C代码,虽然内联代码被单独编译,但是如果你能高效的利用C代码,它可以在同一个地方处理每一件事情。

使用关键字排序

有很多古老的Python代码在执行时将花费额外的时间去创建一个自定义的排序函数。最好的排序方式是使用关键字和默认的sort()方法。

优化循环

每一种编程语言都强调循环语句的优化,Python也是一样的。尽管你可以依赖于丰富的技术让循环运行的更快,然而,开发者经常忽略的一个方法是避免在循环内部使用点拼接字符串。

使用新版本

任何一个在线上搜索Python资料的人都会发现无数关于Python版本迁移的信息。通常,Python每一个版本都针对之前的一个版本做了优化和改进,以让Python运行的更快。限制因素是你喜欢的函数库是否也针对Python的新版本做了改进。

当你使用了新的函数库,获得了Python的新版本,你需要保证代码依然能够运行,检查应用,修正差异。然后,如果你仅仅是

3.Python 执行速度慢只是因为它是解释型语言吗

Python 不是解释型语言,事实上也没有「解释型」语言这个分类。

Python 性能略有不佳的原因可能有几个:

首先是 Python 希望自己是一个简单和优雅的语言,需要性能的组件通常用 C 实现,没有太多改进性能的动力。

然后 Python 具有垃圾回收和自动的内存管理功能,并且采用动态类型系统,会在运行时进行类型检查,这会不可避免地略微影响性能,使其不如静态类型(Java)或没有垃圾回收(C/C++)的语言。

摘自维基百科:

「Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。」

「因为Python属于动态类型语言,动态类型语言是在运行期间检查数据的类型,不得不保持描述变量值的实际类型标记,程序在每次操作变量时,需要执行数据依赖分支」

4.python和php的执行速度哪个快一些

你可以测试一下计算速度

PHP:

$n=1;

$time=time();

while($n$n=$n+1;

}

echo time();

echo "

";

echo $time;

echo "

";

echo time()-$time;

?>

Python:

# -*- coding:gbk -*-

import time

n=1

time_start=time.clock()

while nn=n+1

time_end=time.clock()

print time_end-time_start

哪个输出时间段 就是哪个快

python执行速度

转载请注明出处编程代码网 » python执行速度

资讯

python并发处理

阅读(7)

本文主要为您介绍python并发处理,内容包括如何使用Python实现并发编程,如何在Python中编写并发程序,Python几种并发实现方案的性能比较。多线程几乎是每一个程序猿在使用每一种语言时都会首先想到用于解决并发的工具(JS程序员请回避),使用多线

资讯

python的效率低

阅读(6)

本文主要为您介绍python的效率低,内容包括python为什么效率低,python为什么效率低,Python语言运行效率低意味着什么。当我们提到一门编程语言的效率时:通常有两层意思,第一是开发效率,这是对程序员而言,完成编码所需要的时间;另一个是运行效率,这

资讯

python灰帽子pdf

阅读(6)

本文主要为您介绍python灰帽子pdf,内容包括python灰帽子看之前需要什么基础,python灰帽子看之前需要什么基础,我想成为一名黑客,我在学python,可是里面讲的多是游戏设计,能否。学习是循序渐进的过程最常见的有两本python和黑客相关的书《py

资讯

pythondistribute

阅读(6)

本文主要为您介绍pythondistribute,内容包括pythondistribute怎么安装,求助python2.7.9的distribute安装问题,注意,选取pythonsetuptools而非pythondistributeUbun。首先配置安装好各种python3运行编译环境,然后在https://去掉中间的中文pypi

资讯

python右移

阅读(6)

本文主要为您介绍python右移,内容包括python怎样实现无符号右移,python循环的的结果如何像右移,python左移运算符困扰。是移位运算符,<&gt;是右移位。左移运算是将一个二进制位的操作数按指定移动的位数向左移位,移出位被丢弃,右边的空位一律补

资讯

python安装pyqt5

阅读(6)

本文主要为您介绍python安装pyqt5,内容包括如何安装python3pyqt5,pythonpyqt5怎么安装,PyQt5怎么安装。方法/步骤下载版本:PyQt5-5.4.1-gpl-Py3.4-Qt5.4.1-x64.exe 里面有个py3.4,不知道是不是一定要版

资讯

python爬虫博客

阅读(6)

本文主要为您介绍python爬虫博客,内容包括python抓取csdn博客内容怎么实现,怎么利用python爬取csdn博客访问量例子,如何用Python爬虫获取那些价值博文。怎么利用python爬取csdn博客访问量例子webpy: 轻量级的Python Web框架webpy的设计理念

资讯

python.any

阅读(8)

本文主要为您介绍python.any,内容包括pythonanyall有什么用,pythonanyall有什么用,pythonint什么意思。all是如果iterable的所有元素不为0、、False或者iterable为空,all(iterable)返回True,否则返回Fa

资讯

submitpython

阅读(7)

本文主要为您介绍submitpython,内容包括python爬虫怎么处理submit,submittext3里的Python.zip怎么用来编译Python?,Python问题:findElement()。问题:怎样使用表单 forms解决:web.form模块提供支持创建,校验和显示表单。这里是一个新用户注册的

资讯

python调用so

阅读(6)

本文主要为您介绍python调用so,内容包括python怎么调用so文件,python可以调用.so或.a库吗,python怎么调用安卓的.so文件。当需要采用调用c++的程序的时候,需要对原有的数据加一个extern "C"封装一下即可。采用g++编译的代码也需要的,原因可能是

资讯

mac卸载python

阅读(7)

本文主要为您介绍mac卸载python,内容包括Mac上的Python怎么卸载,Mac上的Python怎么卸载,mac上怎么卸载python。Sublime Text 2 依赖这个路径,所以可能无法启动。解决方法:从官方下载Python2.x,安装,然后做一个软链接前提:2.6

资讯

fedora安装python

阅读(8)

本文主要为您介绍fedora安装python,内容包括fedora15下python怎么安装,fedora15下python怎么安装,fedora如何运行python。1.下载源代码 http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar.bz22

资讯

pythonforrhino

阅读(7)

本文主要为您介绍pythonforrhino,内容包括pythonforRhino中,not和None的区别,请问谁有grasshopper里的pythonforrhino和starling?,如何用pytho写rhino文件。没理解错的话。。应该只是Python的基本语法吧。not是逻辑运算符,表示逻辑非。None

资讯

查看python版本的命令

阅读(7)

本文主要为您介绍查看python版本的命令,内容包括怎么看自己电脑里的python版本,如何查看python的当前版本号,如何查看python版本。对于一个python新手来说,查看python语言的版本号可能是必须会做的操作,那么在linux/unix/windows系统下如何来

资讯

python并发处理

阅读(7)

本文主要为您介绍python并发处理,内容包括如何使用Python实现并发编程,如何在Python中编写并发程序,Python几种并发实现方案的性能比较。多线程几乎是每一个程序猿在使用每一种语言时都会首先想到用于解决并发的工具(JS程序员请回避),使用多线

资讯

python的效率低

阅读(6)

本文主要为您介绍python的效率低,内容包括python为什么效率低,python为什么效率低,Python语言运行效率低意味着什么。当我们提到一门编程语言的效率时:通常有两层意思,第一是开发效率,这是对程序员而言,完成编码所需要的时间;另一个是运行效率,这

资讯

python灰帽子pdf

阅读(6)

本文主要为您介绍python灰帽子pdf,内容包括python灰帽子看之前需要什么基础,python灰帽子看之前需要什么基础,我想成为一名黑客,我在学python,可是里面讲的多是游戏设计,能否。学习是循序渐进的过程最常见的有两本python和黑客相关的书《py

资讯

pythondistribute

阅读(6)

本文主要为您介绍pythondistribute,内容包括pythondistribute怎么安装,求助python2.7.9的distribute安装问题,注意,选取pythonsetuptools而非pythondistributeUbun。首先配置安装好各种python3运行编译环境,然后在https://去掉中间的中文pypi

资讯

python右移

阅读(6)

本文主要为您介绍python右移,内容包括python怎样实现无符号右移,python循环的的结果如何像右移,python左移运算符困扰。是移位运算符,<&gt;是右移位。左移运算是将一个二进制位的操作数按指定移动的位数向左移位,移出位被丢弃,右边的空位一律补

资讯

python安装pyqt5

阅读(6)

本文主要为您介绍python安装pyqt5,内容包括如何安装python3pyqt5,pythonpyqt5怎么安装,PyQt5怎么安装。方法/步骤下载版本:PyQt5-5.4.1-gpl-Py3.4-Qt5.4.1-x64.exe 里面有个py3.4,不知道是不是一定要版

资讯

python爬虫博客

阅读(6)

本文主要为您介绍python爬虫博客,内容包括python抓取csdn博客内容怎么实现,怎么利用python爬取csdn博客访问量例子,如何用Python爬虫获取那些价值博文。怎么利用python爬取csdn博客访问量例子webpy: 轻量级的Python Web框架webpy的设计理念

资讯

python初始化字典

阅读(7)

本文主要为您介绍python初始化字典,内容包括如何初始化一个字典与列表和空值在Python中的钥匙,如何初始化一个字典与列表和空值在Python中的钥匙,python字典中如何创建字典。1. dict.fromkeys([1, 2, 3, 4])这实际上是一个所以它适用于字典

资讯

python读取汉字

阅读(2)

本文主要为您介绍python读取汉字,内容包括python读取的中文怎么使用,python怎么读取文本中的汉字,python怎么读取文本中的汉字。在python脚本的第一行加上#encoding=utf-8即可。程序如下:Created on 2011-9-24@author: l

资讯

python数组行列

阅读(2)

本文主要为您介绍python数组行列,内容包括python3如何把由坐标构成的一维数组转换成行列分别为xy值的二维数组,python中怎样让数据列转置,python怎么输入一个数组矩阵。需求:你需要转置一个二维数组,将行列互换.讨论:你需要确保该数组的行列数

资讯

跳板机python

阅读(2)

本文主要为您介绍跳板机python,内容包括如何直接通过跳板机ssh到服务器,如何无视跳板机,如何直接通过跳板机ssh到服务器。公司连上远程游戏服需要先ssh登到跳板机,再在跳板机上ssh到远程,不能直连,如:自己的系统(Mac OS) ===&gt; 跳板机 =

资讯

python公开课

阅读(2)

本文主要为您介绍python公开课,内容包括Python教学视频实用型的哪里有,哪的Python视频教程比较好,有什么比较好的Python学习教程。随着人工智能时代呼声渐起,Python凭借其入门简单、应用广泛的优势成为很多想要入行互联网行业的人们的首选编

资讯

python二进制文件读取

阅读(2)

本文主要为您介绍python二进制文件读取,内容包括在python中如何从二进制文件中读取信息,在python中如何从二进制文件中读取信息,python二进制文件的读取与写入可以分别使用和方法。你是指读入二进制文件吧?可以使用numpy.fromfile(),也可以使

资讯

python黑客pdf

阅读(2)

本文主要为您介绍python黑客pdf,内容包括为什么很多关于python的黑客书,我想成为一名黑客,我在学python,可是里面讲的多是游戏设计,能否,求黑客书籍资源。学习是循序渐进的过程最常见的有两本python和黑客相关的书《python灰帽子:黑客与逆向

资讯

pythonexcel中文

阅读(2)

本文主要为您介绍pythonexcel中文,内容包括python怎么读excel中文,python怎么将中文写入excel文档,python怎么输出中文文件名excel。简单的介绍一下这两个库,先说xlrd,这个库读excel比较方便,各种方法使用起来也挺方便:bk = xlrd.open_workboo

资讯

apachepythonlinux

阅读(2)

本文主要为您介绍apachepythonlinux,内容包括请教一个关于linux下APACHE关于PYTHON的设置问题,linux配置apache和python的环境,modpython在安装的报错处理,在线,如何在Apache下设置Python。二、linux下apache配置python 一.安装apache apac

资讯

chainPython

阅读(2)

本文主要为您介绍chainPython,内容包括ord在python是什么意思怎么使用,Python大神解释一下吧,python中round函数怎么用。>>>help(ord)Help on built-in function ord in module builtins:ord() #

资讯

python添加一行

阅读(2)

本文主要为您介绍python添加一行,内容包括python怎么实现数组增加一行或多行,python如何将字符串增加一行,python怎么实现数组增加一行或多行。把文档全部作为一个字符串,字符串可以相加, 如在1.doc里添加s 和d,用>>>file=open(1.doc,r)>>>str