Python在Android系统上运行

下载 Scripting Layer for Android (SL4A)

https://github.com/damonkohler/sl4a

https://www.tutorialspoint.com/sl4a/

https://mafiadoc.com/python-for-android-documentation_59bd673b1723ddb63c355d46.html

pydev 功能及使用示例

http://blog.csdn.net/lainegates/article/details/8445241

Python脚本文件打包成可执行文件

py2exe下载网址

http://www.py2exe.org/

python 模块发布步骤:

一、模块

1、import 导入模块

1 import module1,mudule2...

2、from...import...导入模块

导入指定内容

1 from modname import name1[, name2[, ... nameN]]

导入所有内容

1 from modname import *

这种导入方法会有重名风险,使用时应注意。

3、模块中的__all__变量

用来限制当用from xxx import *时导入时,导入的内容。不再__all__这个列表中的内容不会被导入。

1 __all__ = [‘name1‘, ‘name2‘, ...]

二、包

包将有联系的模块组织在一起,即放到同一个文件夹下,并且在这个文件夹创建一个名字为__init__.py 文件,那么这个文件夹就称之为包。

__init__.py文件中,定义一个__all__变量,它控制着 from 包名 import * 时导入的模块。 也可以在__init__.py  中使用import module ,这些mobule 与__all__变量中模块名字一样,作用与__all__ 一样。

三、模块发布

1、创建setup.py文件

 1 .
 2 ├── setup.py
 3 ├── suba
 4 │   ├── aa.py
 5 │   ├── bb.py
 6 │   └── __init__.py
 7 └── subb
 8     ├── cc.py
 9     ├── dd.py
10     └── __init__.py

2、setup.py文件

1 from distutils.core import setup
2
3 setup(name="yourName", version="1.0", description="your module", author="you", py_modules=[‘suba.aa‘, ‘suba.bb‘, ‘subb.cc‘, ‘subb.dd‘])

3、构建模块

1 python setup.py build

 1 .
 2 ├── build
 3 │       |
 4 │       ├── suba
 5 │       │   ├── aa.py
 6 │       │   ├── bb.py
 7 │       │   └── __init__.py
 8 │       └── subb
 9 │           ├── cc.py
10 │           ├── dd.py
11 │           └── __init__.py

4、生成发布压缩包

1 python setup.py sdist
1 ├── dist
2 │   └── yourName-1.0.tar.gz

5、安装

  1. 找到模块的压缩包
  2. 解压
  3. 进入文件夹
  4. 执行命令python setup.py install --prefix=安装路径

这样会在 install_dir\Lib\site-packages  下安装

6、在程序中引用

在程序中,使用from import 即可完成对安装的模块使用

from 模块名 import 模块名或者*

python项目内import其他内部package的模块的正确方法

http://blog.csdn.net/luo123n/article/details/49849649

将python  文件转换成可执行 .exe 文件,使用py2exe 工具转换

1、下载py2exe

2、在 python 文件所在目录创建一个mysetup.py 文件,内容如下:

# -*- coding:UTF-8 -*-
‘‘‘
@author:
‘‘‘

from distutils.core import setup
import py2exe

#setup(console=["longpressPowerkeyTest.py","enterEngineerMode.py"],options={"py2exe":{"includes":["ElementC14N"]}})
#setup(console=["longpressPowerkeyTest.py","enterEngineerMode.py"])

setup(windows=["longpressPowerkeyTest.py","enterEngineerMode.py"])

longpressPowerkeyTest.py 与enterEngineerMode.py 是需要转换的python 文件,其中console 是控制台程序,windows 是图像界面程序

或者setup(console=[r’e:/hello.py’])

指定python 文件绝对路径

3、在windows命令行终端

python mysetup.py py2exe

这样在脚本所在的目录生成 dist  与build 目录,dist 下回生成可执行文件。

或者python e:\setup.py py2exe

根据绝对路径

4、运行dist 下的可执行文件,其中dist下 是发布需要的文件,build 是中间文件,不需要。

5、python mysetup.py py2exe --help   可以查看命令带的参数

6、指定额外的文件

setup(console=["helloworld.py"],
      data_files=[("bitmaps",
                   ["bm/large.gif", "bm/small.gif"]),
                  ("fonts",
                   glob.glob("fonts\\*.fnt"))],
)

说明:data_files选项将创建一个子目录dist\bitmaps,其中包含两个.gif文件;一个子目录dist\fonts,其中包含了所有的.fnt文件。

使用pyinstaller 来将python 文件转换为可执行文件

1、安装pip ,下载路径

https://pypi.python.org/pypi/pip#downloads

Pip and setuptools are included with Python >=3.4 and >=2.7.9

pip是依赖python的,安装pip,将pip的tar包下载到本地并解压,这个tar.gz格式的是windows和linux通用的包,相当linux 下yum.

2、解压下载的包

执行  python setup.py install

将pip 加入环境变量 ,在一下路径   C:\Python27\Scripts

3、cmd 终端运行 pip list

首先我一般用的是python27,官网下载python27msi安装window7 64位后,已经自带了Pip 和 easy_install

但是却不晓得如何安装 whl目录,

经过搜索后发现,把pip和easy_install加入到环境变量中,即 C:\Python27\Scripts

见 https://www.cnblogs.com/2589-spark/p/4501816.html

安装pywin32

可以下载  pywin32?223?cp35?cp35m?win_amd64.whl

下载路径  https://www.lfd.uci.edu/~gohlke/pythonlibs/#pip

在终端运行 pip install ***.whl

或者使用命令安装pip install pywin32

4、安装 Pyinstaller

https://www.cnblogs.com/gopythoner/p/6337543.html

https://pypi.python.org/pypi/PyInstaller/3.0

可以下载pyinstaller 包解压,在解压的目录下运行

python seteup.py install

或者使用pip 安装

pip install  pyinstaller

5、使用Pyinstaller

1、使用下载安装的方式安装的Pyinstaller打包方式

将需要打包的文件放在解压得到的Pyinstaller文件夹中,打开cmd窗口,把路径切换到当前路径打开命令提示行,输入以下内容(最后的是文件名):

    • python pyinstaller.py -F myfile.py

2、使用pip方式安装的Pyinstaller打包方式

打开cmd窗口,把路径切换到文件所在路径(文件随便放在哪里都行)打开命令提示行,输入以下内容(最后的是文件名):

    • pyinstaller -F myfile.py

3、输入参数的含义

    • -F 表示生成单个可执行文件

    • -w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!

    • -p 表示你自己自定义需要加载的类路径,一般情况下用不到

    • -i 表示可执行文件的图标

原文地址:https://www.cnblogs.com/decode1234/p/8535326.html

时间: 2024-08-28 19:47:42

Python在Android系统上运行的相关文章

如何完全备份android系统上的system分区和data分区

安卓的系统备份在很多场合下可能会用到,下面这个python的脚本,可以用来备份整个的data分区:将所有data分区的文件和目录打包到data.zip,并生成recovery的专用edify脚本到update-script.sh.当然,简单的修改下脚本的备份路径就可以备份system分区了,如果再加上几行代码,就可以备份boot,recovery,uboot等等分区,不过这要根据不同的分区来写不同的备份代码: backup.py import sys import os from os.path

在Android系统上安装linux发行版

Install linux distribution (Debian/Ubuntu/Kali Linux/Fedora/openSUSE/Gentoo/RootFS/Arch Linux) on Android system (Debian/Ubuntu/Kali Linux/Fedora/openSUSE/Gentoo/RootFS/Arch Linux) 1.所用的手机类型为Samsung Note2 Verizon i605 2.首先对自己的手机做下清理,将SD卡至少剩余4G以上空间: 3

Chromium on Android: Android系统上Chromium主消息循环的实现分析

摘要:刚一开始接触Chromium on Android时,就很好奇Chromium的主消息循环是怎么整合到Android应用程序中的.对于Android程序来说,一旦启动,主线程就会有一个Java层的消息循环处理用户输入事件等系统事件,而对Chromium来说,它有自己另一套消息循环的实现,这个实现有哪些特点,又将如何无缝整合到Android Java层的消息循环中去,正是本文所要讨论的话题. 原创文章系列,转载请注明原始出处为http://blog.csdn.net/hongbomin/ar

python在windows系统上创建文件

正确方法为:open("test1.txt",'wb')或open("test1.txt",'w') 以下是网上的方法创建遇到的问题 使用Python2.7在windows系统中os.mknod调用错误 一直想学习一门脚本语言,用来做一些快速的脚本处理.在同事的强烈推荐下,我选择了Python.最开始被它吸引的是 缩进即代码块 的风格.在c++开发中,不规范的缩进风格让人总是产生一种不舒服的代码阅读体验.我非常欣赏这种新的语言可以优雅的解决这个问题. 开始安装Pty

如何让基于.NET 2.0的应用在高版本的系统上运行?

我们的WinForm项目是基于.NET 2.0开发的,在部署时,发现有些机器没有.NET 2.0,但是即使这些机器有装.NET 2.0 以上的版本,也无法运行我们的程序.这就比较蛋疼了. 我们查了一下,发现windows各个版本中自带的.NET Framework的版本是这样的: windows版本 .net framework版本 winxp 无  (注:xp sp1 则自带了 .net 2.0) win7 .net 3.5(包含.net3.0 .net2.0) win8 .net 4.5 w

64位系统上运行32位程序能否申请到8G内存?

申请不到,因为64为系统在运行32位程序的时候只是为了向下兼容而已,对于32位程序来讲,申请8G的存储空间没有任何意义,因为32位的程序最大寻址空间只有4G,32位程序在编译之后的机器代码也只有32位的寻址数(指针占4个字节),因此申请8G的空间是没啥意义的,而且一般系统都会为每个进程设置一些资源限制,对于32位程序其能申请的内存量也远远小于4G可以看一下下面这个表操作系统内部数据结构限制对比 IT168评测中心 分组 限制 64位Windows限制 类别 单个进程虚拟空间 4GB 16TB 用

android 手机上运行图像算法

在pc上调试好的图像处理算法想要在android手机上跑一下看看速度需要一下几个步骤 1.建立一个android application,通过ndk调用你写好的图像算法的c/c++ code 2. 然后将你的code放到jni文件中,编写android.mk,之后利cgywin编译生成.so供android调用 3.之后把你的java code编译成apk,然后pull到手机中就可以看到结果了. 总的来说,如果没有做优化的话,直接在手机跑pc上的code,结果一般都是惨不忍睹,一般需要针对算法做

android安卓系统上运行jar文件

原文链接: http://blog.sina.com.cn/s/blog_658c8cea0101mdhp.html 步骤如下: 1. 将文件打包成可执行jar文件(可在eclipse里export),如test.jar: 2. 再使用dx把class编译成dex文件,dex为android使用的dalvik虚拟机认识的编译文件: 进入到android_sdk\build-tools\android-4.3\目录,执行下面命令:(要把打包的jar文件放到这个目录下,不放的话就指定目录) dx -

在android系统上写C语言程序--开机启动该程序不进入安卓系统

今天要写的这篇博文意义重大,也是网上很少有的,这是在我工作中学会的一项技术,当然,它也是由简单的问题组合而来的.如何在安卓中写C语言程序,调试安卓驱动,测试程序的的一项重要技能,下面我就不说废话了,直接说实用的,怎么用这个东西. 关于这个问题,相信很多学Android的都会去关注这个问题,大家普遍会有个这样的疑问:安卓是怎么跑起来的? 最简单的说法,安卓系统是这样加载的: Bootloader------Kernel(对应平台版本的Linux内核)------filesystem文件系统(这个就