核心版本

QPython 默认使用 Python 2.7.2 来作为核心,其落后于最新的 2.7.9 版本,然而你可以通过替换 QPython 核心部件的方式来将它替换为你需要任意的 2.x 版本。

运行模式

QPython 解析引擎支持以下几种运行模式:

  • 控制台模式:这是 QPython 最新版本(>=1.0.4) 默认支持的形式,它会让用户的程序按照控制台模式运行

  • 图形模式:你可以让 QPython 在图形模式下运行。QPython 目前支持的 Kivy 框架,你只需要在代码头部部分增加 "#qpy:kivy" 即可让你的程序运行在原生的图形界面模式。

  • WebApp 模式:这是 QPython 将会重点支持的模式,通过 WebApp 模式,能以最小的开发难度来为复杂的交互提供很好的支持。QPython 支持 Bottle, Django, Web.py 等多种 Python WEB 编程框架来构建服务并提供良好的支持,你只需要在代码头部部分增加 "#qpy:webapp:(App标题)" 以及 "#qpy:(Web 服务地址:端口号)/(Web 服务路径)" 即可。

示例

  • 控制台模式 (默认模式)
#qpy:console
val = raw_input("Please input value")
print "hello world %s" % val
  • 图形界面模式 (Kivy 模式)
#qpy:kivy

from kivy.app import App
from kivy.uix.button import Button

class TestApp(App):
    def build(self):
        # display a button with the text : Hello QPython
        return Button(text='Hello QPython')

TestApp().run()
  • WebApp 模式
#qpy:webapp:<app title>
#qpy:fullscreen
#qpy://localhost:8080
"""
以上代码运行时将会用 WebView 以全屏模式打开 localhost:8080
"""
from bottle import route, run

@route('/')
def hello():
    return "Hello World!"

run(host='localhost', port=8080)

脚本和项目

开始开发前,你会面临选择脚本还是项目。脚本就是只有一个文件即可实现功能。如果你的程序涉及多个文件,包括资源文件,就需要用项目的组织形式。阅读其他关于脚本和项目的信息

模块

QPython 能重用绝大部分的纯 Python 实现第三方库,对于混合 C/C++ 编码的库,QPython 目前还无法直接使用。QPython 团队正努力构建编译服务,以支持更广泛的库。

QPython 可以通过开发者工具面板中的“库”来安装相对应的库。 QPython 开发团队正在陆续将一些常见的库发布到 QPypi 中,此外,你也可以使用 QPython 的 pip 客户端来从官方的 pypi 上安装纯 Python 实现的包。

目前,QPython 主要支持以下库:

安卓特性编程库

QPython 支持 SL4A 库,有了 SL4A 的支持,你能便携地使用脚本来驱动您的安卓设备工作。

图形界面

QPython 支持 Kivy 图形界面框架,因此,你可以方便地使用它进行包括游戏在内的图形应用开发。目前,QPython 使用的是最新的 1.8.0 版本的 Kivy.

WEB 框架

QPython 已经很好地支持的 WEB 框架有:

支持多样化的 WEB 开发框架,QPython 能让 WEB 开发人员最方便用自己熟悉的方式开发出 WEB APP。

科学计算

QPython 支持以下科学计算的模块

  • Numpy - 需要从设置中的库管理中进行安装

其他模块

除了 Python 基础的网络接口外,QPython 还支持高级网络编程框架有:

除此之外,还有许多库已经被默认支持,但是尚未被罗列出来,欢迎你进行探索并给我们反馈。

开始掌上编程之旅

已经了解了 QPython 支持的项目类型了,你就可以打开 QPython 里的编辑器进行开发了。

点击“新建”后,即可出线项目或者脚本类型选项。其中项目可以选择 WebApp, ConsoleApp, KivyApp 等,分别对应Web APP, 控制台程序,以及 Kivy 界面程序。

开始不一样的掌上编程之旅吧。