cpython
A. python的作用
你不能算是菜鸟,很有潜力。
我原来是学习C++的。用了前后5-6年左右才熟悉了,精通了。后来互联网时代来了,我觉着java不好用,在研究了当时市面上的所有语言后选择了python,至今,用了10年了。这期间用java, .net,php, c++都做过项目。在学习python前,我也学习过其它的各种语言。甚至fortran和prolog. 还有些不知名的语言。
一个东西好不好,其实还是要自己在实践中的感受。也许今天觉着它好。几年后又觉着它不好。
python好不好,还在于自己的积累与感觉。如果你积累的多,游刃有余,会觉着它很好。从一般情况来看python是脚本语言之王,十年前是这样,十年后还是这样。
胶水是指,python借助C语言接口,几乎可以驱动所有已知的软件,模块。 只要我们用到的,通常你都能找到一个开源的库。安装后就可以驱动它。无论是数据库,网络,互联网,图形,游戏,科学计算,GUI,OA,自动控制,甚至宇航员都在用。
python通常不作为工程语言出现。就是正规的软件生产不使用它。主要用java, c#, xml, c。至于为什么,这是软件工程的需要。python不具有完整的语法检查。
python并不为特定目的而产生。虽然它更适用于系统维护。不过它就是一个通用的脚本语言。
从个人感觉来说,微软件东西,非常好,省心,一流的技术理念,开发工具是全世界最好的(没有之一)。不过,因为它只限于微软的平台,所以范围上大大打了折扣。 世界上最流行的服务器还是unix和linux。而不是windows。桌面操作系统最流行的是windows。不过在所有的平台上都有C语言,大部分平台,甚至手机平台都有python语言和它的执行环境。这是其它的所有语言,包括java几乎都很难做到的。
python严格说叫CPython,与C/c++有天然的融合性。这也是python强大的原因之一。在windows环境下可以使用ironpython,这个版本与vc可以结合的比较好。其它的平台可以使用eclipse,不过最好还是直接使用普通的文本编辑器。比较推荐的一个编辑器是sublime text2, geany, vi等。
python图形化编程不难。当然MFC也不难。我不认为MFC有多难。其实学习起来只是略难,但是这不是一个数量级的。MFC可以生产出非常强劲的界面。而python界面多属于简单的。
虚拟机可以跑linux,配置好就可以。也可以独立安装一个linux。也可以直接在windows下学习python。没有太多区别。建议你买一个200多元的树莓派,很好玩。安装的是linux操作系统。
IDLE是我初学,甚至几年中用得最多的。后来有了sublime才基本上不用它。idle只有一个缺点,就是有时候程序大了,输入键盘会有感觉延迟。
B. CPython是什么PyPy是什么Python和这两个东西有什么关系
CPython:是用C语言实现Pyhon,是目前应用最广泛的解释器。最新的语言特性都是在这个上面先实现,基本包含了所有第三方库支持,但是CPython有几个缺陷,一是全局锁使Python在多线程效能上表现不佳,二是CPython无法支持JIT(即时编译),导致其执行速度不及Java和Javascipt等语言。于是出现了Pypy。
Pypy:是用Python自身实现的解释器。针对CPython的缺点进行了各方面的改良,性能得到很大的提升。最重要的一点就是Pypy集成了JIT。但是,Pypy无法支持官方的C/Python API,导致无法使用例如Numpy,Scipy等重要的第三方库。这也是现在Pypy没有被广泛使用的原因吧。
而PyPy与CPython的不同在于,别的一些python实现如CPython是使用解释执行的方式,这样的实现方式在性能上是很凄惨的。而PyPy使用了JIT(即时编译)技术,在性能上得到了提升。
C. 请问Jython和Python的关系是什么
(1)我们通常意义上说的python是CPython,也就是完全用C实现的python,它支持C的扩展,不支持java什么的扩展。
(2)JPython是完全用JPython实现的python,它支持用java扩展,貌似无法用C扩展。
(3)这两个东东如果不讨论什么特殊的模块的话,当然用法相同,打个比方,现在用一个项目,让你用Fortran来实现python,那你也会尽可能的保持其语法上与另外两个主流的interpret一致。
(4)这两个东东,当然有区别,例如CPython就没有JPython的垃圾回收机制
(5)python还有其他的实现,例如有用.NET实现的.......全是C#
--------------------------------------------------------------------------
(6)至于你说谁的扩展好,我感觉这个很难说,要依据你要写什么类型的工程来定
(7)python挺不错的,现在NASA火星上的那个“好奇号”的程序都是用java编写的,可能下一个就是python啦!!!!
D. 用 CPython写的python代码能否用JPython解释器解释
绝大部分可以,语法差不多,只是底层解释不同罢了。不过JPython写的代码不一定能在cpython下解释执行,因为JPython中可能会用到JDK中的东西,必须在JVM下执行,这算是JPython对CPython的优势吧,就是能调用Java,在JVM上解释执行。
E. CPython解释器是什么意思如何安装
将Python源代码翻译为字节码的程序称为Python解释器,CPython是一个用C编写的Python解释器,它也是Python自带的解释器,包含在Python安装程序中。
F. Cpython 和pycharm有什么区别
两个不是一个东西,Cpython指的是解释器是用C语言开发的,Cpython是使用最广的python解释器,除了Cpython还有Ipython,Jpython等,而pycharm是一款开发工具,可以帮助用户进行调试,语法高亮,项目管理,代码跳转,智能提示,自动完成等功能。
G. 目前cpython调用C/C++的主流手段是cython么
还可以使用Cython来实现混编
1 下载Cython,用Python setup.py install进行安装
2 一个实例
① 创建helloworld目录创建helloworld.pyx,内容如下:cdef extern from"stdio.h": extern int printf(const char *format, ...) def SayHello(): printf("hello,world\n")
② 编译,最方便的是利用python的Distutils了,
helloworld目录下创建Setup.py,内容如下:from distutils.core import setupfrom distutils.extension import Extensionfrom Cython.Build import cythonize setup( name = 'helloworld', ext_moles=cythonize([ Extension("helloworld", ["helloworld.pyx"]), ]),) 编译:python Setup.py build安装:python Setup.py install安装后,会将在build/lib.???目录下生成的helloworld.pyd拷贝到Lib/site-packages注: 有时我们只是希望测试一下,并不希望安装,这时可以把build/lib.???目录下的helloworld.pyd拷贝到当前目录 或者在importhelloworld前执行脚本:import sys;sys.path.append(pathof helloworld.pyd) ③ 测试:>>>import helloworld >>>helloworld.SayHello() hello,world
H. cpython和cython的区别
这里的实现指的是符合Python语言规范的Python解释程序以及标准库等。这些实现虽然实现的是同一种语言,但是彼此之间,特别是与CPython之间还是有些差别的
I. cpython 代码保护
绝部语差底层解释同罢JPython写代码定能cpython解释执行JPython能用JDK东西必须JVM执行算JPythonCPython优势吧能调用JavaJVM解释执行