PyPy 7.3.0 发布了,PyPy 是用 Python 实现的 Python 解释器,7.3.0
版本包含两个不同的解释器:

一、Python介绍

  python的创始人为吉多·范罗苏姆(Guido
van
Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。  

  Python
语言是少有的一种可以称得上即简单又功能强大的编程语言。你将惊喜地发现
Python
语言是多么地简单,它注重的是如何解决问题而不是编程语言的语法和结构。

  Python
是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程。
Python
简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。

 

  • PyPy2.7,支持 Python 2.7 的语法和功能,包括用于 CPython 2.7.13 的
    stdlib
  • PyPy3.6:支持 Python 3.6 的语法和功能,包括用于 CPython 3.6.9 的
    stdlib

无论你是正在使用 Python 进行快速开发,还是在为 Python 桌面应用制作原生
UI ,或者是在优化现有的 Python 代码,以下这些 Python
项目都是应该使用的。

二、Python的特点

  1.
简单

  Python
是一种代表简单主义思想的语言。阅读一个良好的 Python
程序就感觉像是在读英语一样,尽管这个英语的要求非常严格! Python
的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。

  2.
易学 
 

  就如同你即将看到的一样,
Python 极其容易上手。前面已经提到了, Python 有极其简单的语法。

  3.
免费、开源 
 

  Python 是
FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。
FLOSS 是基于一个团体分享知识的概念。这是为什么 Python 如此优秀的原因之一
—— 它是由一群希望看到一个更加优秀的 Python
的人创造并经常改进着的。

  4.
高层语言

  当你用
Python
语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。

  5.
可移植性

  由于它的开源本质,
Python
已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有
Python 程序无需修改就可以在下述任何平台上面运行。这些平台包括
Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm
OS、QNX、VMS、Psion、AcomRISC OS、VxWorks、PlayStation、Sharp
Zaurus、Windows CE 甚至还有 Pocket-PC! 

  6.
解释性 
 

  这一点需要一些解释。一个用编译性语言比如
C 或 C++ 写的程序可以从源文件(即 C 或 C++
语言)转换到一个你的计算机使用的语言(二进制代码,即 0 和
1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python
语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,
Python
解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用
Python 更加简单。由于你只需要把你的 Python
程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的 Python
程序更加易于移植。

  7.
面向对象
 

  Python
即支持面向过程的编程也支持面向对象的编程。在面向过程的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在面向对象的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如
C++ 和 Java 相比, Python
以一种非常强大又简单的方式实现面向对象编程。 

  8.
可扩展性
 

  如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用
C 或 C++ 编写,然后在你的 Python 程序中使用它们。 

  9.
可嵌入性 
 

  你可以把
Python 嵌入你的 C/C++ 程序,从而向你的程序用户提供脚本功能。  

  10.
丰富的库

  Python
标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV
文件、密码系统、GUI(图形用户界面)、Tk
和其他与系统有关的操作。记住,只要安装了 Python
,所有这些功能都是可用的。这被称作 Python
的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如 wxPython
、Twisted 和 Python 图像库等等。

 

解释器基于几乎相同的代码库,因此是双重发行版。

Python 凭借其易用的特点,已经被工业界和学术界广泛采用。另一方面,Python
丰富的第三方项目——库、附加组件,和辅助的开发成果——使得 Python
语言的应用范围被不断扩大。

三、Python的解释器与Python安装

PyPy 正致力于支持为 python 构建第三方软件包的工具,因此此版本更改了 PyPy
的 ABI 标签。

其中一些项目,比如 PyInstaller 和 WxPython
,为那些制作桌面应用和终端应用的 Python 开发者提供了便利。其他的项目,
比如 PyPy , 则是用来给服务器端 Python 应用提供额外的动力。还有一些,像
PBR 、CFFI 和 MyPy , 适用于差不多所有五花八门的 Python
应用,无论在什么地方运行。

1、Python解释器

  当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种Python解释器。

  **CPython**

  当我们从Python官方网站下载并安装好Python
3.5后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫 
CPython。在命令行下运行python就是启动CPython。CPython是使用最广的Python解释器。我的博客的所有代码也都在CPython下执行。

CFFI 后端已更新至版本 1.13.1,建议使用 CFFI 而不是 c 扩展名与 C
进行交互。

图片 1

  IPython

  IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。CPython用>>>作为提示符,而IPython用In [``序号``]:作为提示符。

内置的 cppyy 模块已升级到
1.10.6,它提供了更好的模板分辨率,更严格的枚举处理,匿名结构/联合,用于分发的
cmake 片段,用于 POD 的优化以及更快的包装程序调用。建议使用 cppyy 对
Python 的 C++ 代码进行高效封装。

如果你是一个 Python
开发者,所有这六个项目都值得你来熟悉一下。而且所有这些项目,在近几周都发布了新的主要版本。

  PyPy

  PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。

用于 REPL 内部交互的供应商 pyrepl 软件包也已更新。

一、Python 必备之 PyPy

  Jython

  Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

对代码页编码和解码的支持已添加到 Windows。

  1. PyPy 主要用于何处?

  IronPython

  IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

小结:Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

 

与往常一样,此版本修复了 PyPy
用户社区提出的一些问题和错误。强烈建议更新。

如果你需要更快的 Python 应用程序,最简单的实现的方法就是通过 PyPy
,Python 运行时与实时(JIT)编译器。与使用普通的 Python 对等程序相比,使用
PyPy 的 Python 应用程序的运行速度平均提升7.5倍。不幸的是,PyPy 与许多
Python 的明星框架并不是很好地兼容。PyPy 5.9
在解决这个问题上取得了重大进展。

2、Python安装

Windows:

  1、下载安装包:

    

  2、安装

  3、配置环境变量:

    右键计算机–》属性–》高级系统设置–》高级–》环境变量–》在第二个内容框中找到变量名为Path的一行,双击–》追加Python的安装目录

Linux与Mac

  无需安装,原装Python环境

 

推荐使用PyCharm
IDE开发Python,下载地址。也可以在命令行开发Python,但是总感觉自己只是个写脚本的,用了PyCharm,咱也是开发程序的人。

 

更新说明:

  1. PyPy 5.9 的功能

四、Hello Word程序

  在Python中打印Hello
Word只需要使用print即可:

print("Hello World")

  对比下其它语言的hello
world

图片 2图片 3

1 #include <iostream>
2 int main(void)
3 {
4 std::cout<<"Hello world";
5 }

C++

图片 4图片 5

#include <stdio.h>
int main(void)
{
printf("\nhello world!");
return 0;
}

c

图片 6图片 7

package main

import "fmt"

func main(){

    fmt.Printf("Hello World!\n God Bless You!");

}

GO

图片 8图片 9

<?php  
           echo "hello world!";  
?>  

PHP

图片 10图片 11

public class HelloWorld{
    public static void main(String args[]){
    System.out.println("Hello World!");
}
}

Java

 

 学习任何编程语言之前,打印一句”Hello
Word”,你的心里会感到很踏实,不要问为什么,这是一种仪式……..

 

下载地址:

数据科学框架 NumPy 和 Pandas 现在运行在 PyPy 的 Python 2.7
兼容版本上。这些框架的大部分问题来源于 PyPy 与现有 C
代码的接口。为了解决这个问题,PyPy 5.9 对 CFFI 库(见下文)和 PyPy 的
Python C API 兼容性层进行了改进。

(文/开源中国)    

此外,在 5.9 发布版本中,PyPy 的 JSON 解析器在处理多种 JSON
对象,尤其是那些重复使用的相同的词典键值时,明显更快。

  1. 何处下载 PyPy 5.9

你可以直接从PyPy
的网站下载二进制版本。官方二进制文件包括
Windows、Mac OS 和 Linux 的不同 CPU 架构。请注意,为了兼容 Python 2.7 和
Python 3.5
,存在不同的二进制文件,因此请确保你正在获取与你将要运行的脚本所匹配的版本。

BitBucket 上有源代码和错误跟踪记录。

二、Python 必备之 CFFI

相关文章