导航:首页 > 源码编译 > py编译器怎么运行

py编译器怎么运行

发布时间:2024-12-03 07:32:42

python源程序执行的方式

python源程序执行的方式如下:

1、在命令行输入ipython或ipython3进入交互式shell环境,如果不行的话需要安装ipython和python镜像,配置方式:pip3 install ipython -i ctrl+D或者exit 推出ipython ipython的优点:支持自动补全和执行linux命令。

2、在命令行窗口输入python (官方的shell),在这里可以直接输入python程序代码,退出用exit() 或者 ctrl+D。

3、集成开发环境:PyCharm 类似IDEA,推荐教程: 《Python教程》。

编译执行

所谓编译执行就是源代码经过编译器编译处理,生成目标机器码,就是机器能直接运行的二进制代码,下次运行时无需重新编译。不过它是针对特定CPU体系的,这些目标代码只能在特定平台执行。

如果这个程序需要在另外一种 CPU 上面运行,这个代码就必须重新编译。它不具备可移植性,但是执行速度快,C、C++这类语言属于编译型语言。

㈡ python代码写好了怎么保存

具穗宽判体操作步骤如下。
第一步:打开python编巧早译器,点击【file】-【newfile】。第二步:在打开的窗口中输入代码,点击【file】猜改-【save】。第三步:选择保存的路径,设置名称,文件类型设为python文件,点击【保存】。第四步:选择保存好的py文件,点击【run】-【runmole】。第五步:在输出窗口中即可看到程序的运行结果。Python是一种跨平台的计算机程序设计语言,是ABC语言的替代品,属于面向对象的动态类型语言,最初被设计用于编写自动化脚本,随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

㈢ python怎么使用cython

1. Cython是什么?

它是一个用来快速生成Python扩展模块(extention mole)的工具

语法是Python和c的混血

Cython作为一个Python的编译器,在科学计算方面很流行,用于提高Python的速度,通过OpenMPI库还可以进行吧并行计算。

2. Cython安装(Windows)

我的环境是win7 x64, python27, vs2010

安装的基础是有一个c编译器(这里以vs2010为例)

从http://cython.org下载安装包,解压到一目录,进入该目录,在cmd命令行中执行

python setup.py install

注:执行过程可能遇到问题:Windows下pip安装包报错:Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat

解决方案:下载Microsoft Visual C++ Compiler for Python 2.7,点击直接安装即可。

3. 例子

例3.1:入门

创建hello.pyx,内容如下

def say_hello():
print "Hello World!"

创建setup.py,内容如下

from distutils.core import setup
from Cython.Build import cythonize
setup(name = 'Hello world app',
ext_moles = cythonize("hello.pyx"))

编译Cython代码

step1: 把.pyx文件被Cython便以为.c文件
step2: 把.c文件编译为可导入的使用模块.so(Windows下为.pyd)文件

1
2

python setup.py build
python setup.py install

注:可能出现问题:Unable to find vcvarsall.bat

原因:Python 2.7 会搜索 Visual Studio 2008.如果你电脑上没有这个版本的话就会报错。

如果装的是vs2010,那么在cmd命令行中执行

1

SET VS90COMNTOOLS=%VS100COMNTOOLS%

如果装的是vs2010,那么在cmd命令行中执行

1

SET VS90COMNTOOLS=%VS110COMNTOOLS%

执行

1
2
3

>>> import hello
>>> hello.say_hello()
Hello World!例3.2 通过静态类型提高速度

在Cython中可以通过标记静态类型来提高速度,凡是标记为静态类型的部分都会将动态语言类型变为简单的c代码,从而提速。

但是如果滥用静态类型,会降低可读性,甚至因类型设置不当导致错误类型检查造成速度降低。

例3.2.1 静态类型变量

Python原生态代码

compute.pyx

def f(x):
return x ** 2 - x
def integrate_f(a, b, N):
s = 0
dx = (b - a) / N
for i in range(N):
x += f(a + i * dx)
return s * dx

setup.py

from distutils.core import setup
from Cython.Build import cythonize
setup(
name = 'Hello world app',
ext_moles = cythonize("compute.pyx"),
)

test.py

import compute
import time
starttime = time.clock()
compute.integrate_f(3.2, 6.9, 1000000)
endtime = time.clock()
print "read: %f s" %(endtime - starttime)

执行

1
2
3

python setup.py build
python setup.py install
python test.py

结果

1

read: 0.332332 s

使用静态变量替换后的代码

compute2.pyx

def f(double x):
return x ** 2 - x
def integrate_f(double a, double b, int N):
cdef int i
cdef double s, dx
s = 0
dx = (b - a) / N
for i in range(N):
s += f(a + i * dx)
return s * d

setup2.py

from distutils.core import setup
from Cython.Build import cythonize
setup(
name = 'Hello world app',
ext_moles = cythonize("compute2.pyx"),
)

test2.py

import compute2
import time
starttime = time.clock()
compute2.integrate_f(3.2, 6.9, 1000000)
endtime = time.clock()
print "read: %f s" %(endtime - starttime)

执行

1
2
3

python setup.py build
python setup.py install
python test.py

结果

1

read: 0.109200s

结论

该测试用例,使用静态类型速度是不使用静态类型的3倍。

例3.2.2 静态类型函数

把compute2.pyx中的函数变为

cdef double f(double x):
return x ** 2 - x
def integrate_f(double a, double b, int N):
cdef int i
cdef double s, dx
s = 0
dx = (b - a) / N
for i in range(N):
s += f(a + i * dx)
return s * dx

结果

1

read: 0.084859 s

结论:比例子3.2.1速度又快了

例3.3 调用C函数

cdef extern from "math.h":
double sin(double)
double cos(double)

cpdef double Sin(double x):
return sin(x)

cpdef double Cos(double x):
return cos(x)

cpdef: 对于Python可使用的函数使用(为了使得在以后的Python程序中调用Sin,Cos函数,用cpdef,而不用cdef)
cdef: 对于C可使用的函数使用

请注意,上面的代码声明了 math.h 里的函数,提供给 Cython 使用。C编译器在编译时将会看到 math.h 的声明,但 Cython 不会去分析 math.h 和单独的定义。

㈣ Python敲代码时怎么换行,每次一按Enter键就直接执行程序了,可是代码还没有写完啊。。。

1、Windows使用win+R键进入命令行模式。

阅读全文

与py编译器怎么运行相关的资料

热点内容
c盘越来越大该删除哪个文件夹 浏览:907
南通压缩机厂家报价 浏览:201
小米手机如何控制另一台安卓手机 浏览:460
程序员看键盘吗 浏览:766
游戏物理算法 浏览:940
如何申请到一个大型服务器 浏览:890
python可以开发什么知名软件 浏览:78
做个程序员先学什么 浏览:803
海马普力马更换压缩机 浏览:694
pythonpandasmax 浏览:611
python网络爬虫的基本原理 浏览:517
立体书pdf 浏览:119
哪里做app做的多 浏览:611
文件怎么拷贝进文件夹 浏览:739
下载的w10还要解压吗 浏览:12
学生成绩管理android 浏览:391
hls加密方案drm 浏览:848
手机怎样打开加密照片 浏览:542
钉钉发送的文件在哪个文件夹 浏览:681
怎么知道源码的语言 浏览:991