pythonresource

1.Python怎样得到资源文件的绝对路径

import sys

import os.path

package = "foo"

resource = "bar.ini"

# pkgutil.get_data(package, resource)

os.path.abspath(os.path.join(os.path.dirname(sys.modules[package].__file__), resource))如果你说的是包的资源文件,可以用上面的方法获取资源文件的绝对路径。

2.kivy在Android上运行,有人弄过吗

在电脑上写好一个kivy程序,编译成apk后拷至手机,运行,出现kivy启动界面,随即退出。

怎么查找错误原因呢?在ubuntu下运行该kivy程序(python main.py等),会打印出调试及错误信息,但在手机上怎么办?想到了adb logcat。

于是费了九牛二虎之力,将盛大bambook s1手机连到虚拟机上,执行adb logcat命令,然后执行程序,果然看到了一行错误提示:

I/python ( 4775): [DEBUG ] [Resource ] add </system/fonts> in path list

I/python ( 4775): Traceback (most recent call last):

I/python ( 4775): File "/home/kivy/myprogs/SwitchMT/main.py", line 218, in <module>

I/python ( 4775): File "/home/kivy/android/python-for-android/build/python-install/lib/python2.7/site-packages/kivy/app.py", line 600, in run

I/python ( 4775): File "/home/kivy/myprogs/SwitchMT/main.py", line 201, in build

I/python ( 4775): File "<string>", line 15, in write

I/python ( 4775): UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 7: ordinal not in range(128)

该行是一条含中文字符的print语句,字串前未加u。反正以前调试用的语句,不作分析,直接去掉。再次运行,通过。终于出现了程序的kivy界面了。

再查看前面日志,却发现这么一句:

I/python ( 4775): [INFO ] Kivy v1.8.0-dev

I/python ( 4775): [INFO ] [Logger ] Record log in /mnt/sdcard/org.test.SwitchMT/.kivy/logs/kivy_13-08-04_1.txt

自己升级安装的,在ubuntu中运行时所用的kivy v1.7.1,怎么打apk包时变成了1.8.0-dev不得而知。重要的是,该程序在 /mnt/sdcard/org.test.SwitchMT/.kivy/logs下产生有日志文件!找到该目录,发现甚至连main.py都被解包了出来,而日志文件里也指明了错误, 这就是说,运行完kivy程序如果出错,只需在日志目录查看日志文件即可。省去太麻烦的调试环境了。

看了看,发现之前跑过的kivy程序也都有各自的包名下相应的目录,看来这就是kivy的运行机制,当然不知道是不是跟编译打包时加的debug选择有关系,是不是改成release就没有这些目录了呢?毕竟将py源码解出来话卡上不太安全。这就不得而知了。以后再试吧,不过目前至少是解决了查看程序出错日志的问题了,特此记录。

3.Python IDLE与python有什么区别

一、指代不同

1、Python IDLE:是Python的集成开发环境 ,自1.5.2b1以来已与该语言的默认实现捆绑在一起。

2、python:是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言。

二、用处不同

1、Python IDLE:被打包为Python包装的可选部分,包含许多Linux发行版 。 完全用Python和Tkinter GUI工具包编写( Tcl / Tk的 包装函数)。

2、python:被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

三、特点不同

1、Python IDLE:是开发 python 程序的基本IDE(集成开发环境),具备基本的IDE的功能,是非商业Python开发的不错的选择。

2、python:在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。

参考资料来源:百度百科-Python

参考资料来源:百度百科-Idle

4.kivy在Android上运行,有人弄过吗

在电脑上写好一个kivy程序,编译成apk后拷至手机,运行,出现kivy启动界面,随即退出。

怎么查找错误原因呢?在ubuntu下运行该kivy程序(python main.py等),会打印出调试及错误信息,但在手机上怎么办?想到了adb logcat。于是费了九牛二虎之力,将盛大bambook s1手机连到虚拟机上,执行adb logcat命令,然后执行程序,果然看到了一行错误提示:I/python ( 4775): [DEBUG ] [Resource ] add in path listI/python ( 4775): Traceback (most recent call last):I/python ( 4775): File "/home/kivy/myprogs/SwitchMT/main.py", line 218, in I/python ( 4775): File "/home/kivy/android/python-for-android/build/python-install/lib/python2.7/site-packages/kivy/app.py", line 600, in runI/python ( 4775): File "/home/kivy/myprogs/SwitchMT/main.py", line 201, in buildI/python ( 4775): File "", line 15, in writeI/python ( 4775): UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 7: ordinal not in range(128)该行是一条含中文字符的print语句,字串前未加u。

反正以前调试用的语句,不作分析,直接去掉。再次运行,通过。

终于出现了程序的kivy界面了。再查看前面日志,却发现这么一句:I/python ( 4775): [INFO ] Kivy v1.8.0-devI/python ( 4775): [INFO ] [Logger ] Record log in /mnt/sdcard/org.test.SwitchMT/.kivy/logs/kivy_13-08-04_1.txt自己升级安装的,在ubuntu中运行时所用的kivy v1.7.1,怎么打apk包时变成了1.8.0-dev不得而知。

重要的是,该程序在 /mnt/sdcard/org.test.SwitchMT/.kivy/logs下产生有日志文件!找到该目录,发现甚至连main.py都被解包了出来,而日志文件里也指明了错误, 这就是说,运行完kivy程序如果出错,只需在日志目录查看日志文件即可。省去太麻烦的调试环境了。

看了看,发现之前跑过的kivy程序也都有各自的包名下相应的目录,看来这就是kivy的运行机制,当然不知道是不是跟编译打包时加的debug选择有关系,是不是改成release就没有这些目录了呢?毕竟将py源码解出来话卡上不太安全。这就不得而知了。

以后再试吧,不过目前至少是解决了查看程序出错日志的问题了,特此记录。

5.python如何让程序一直运行且内存资源自动释放

象的引用计数减少;

函数运行结束,所有局部变量都被销毁,对象的引用计数也就随之减少。例如 foo(x) 运行结束,x 被销毁;

当变量被赋值给另一个对象时,原对象的引用计数也会减少。例如 x = 4,这时候 3 这个对象的引用计数就减 1 了;

使用 del 删除一个变量也会导致对象引用减少。例如 del x;

对象从集合对象中移除。例如 lst.remove(x);

包含对象的集合对象被销毁。例如 del lst;

这些操作都可能使对象变成垃圾回收对象,由垃圾收集器负责收集,当然垃圾收集器也负责处理循环引用对象。

要立即释放,可以使用下面的代码

import gc

gc.collect()

pythonresource

转载请注明出处编程代码网 » pythonresource

资讯

pythonutf8字符串

阅读(9)

本文主要为您介绍pythonutf8字符串,内容包括Python新手请教:如何判断一个字符串(utf8)是英语还是汉语搜,怎么在Python里使用UTF8编码,python从utf8文件中读入的字符串什么编码。基本概念在Python里有两种类型的字符串类型:字节字符串和Unicode

资讯

python添加模块

阅读(8)

本文主要为您介绍python添加模块,内容包括如何在python中添加自定义模块,如何在python中添加自定义模块,python怎样添加模块加载路径。一般来说,我们会将自己写的python模块与python自带的模块分开存放以达到便于维护的目的。Python 运行环

资讯

pythonsocket传输

阅读(7)

本文主要为您介绍pythonsocket传输,内容包括python如何使用socket来传输对象,我想做一个程序可以让服务端与客户端利用python的socket模块传输数,请教如何使用python的socket发送二进制数据。import socketimport structsock = socket.sock

资讯

python声明对象

阅读(8)

本文主要为您介绍python声明对象,内容包括python中需要声明对象类型吗,python3怎么声明一个bytes对象,python中需要声明对象类型吗。Python可以自定义新的类,然后用这些类创建新对象。12345classFruit:def__init__(self, name):s

资讯

pythonfor画三角形

阅读(5)

本文主要为您介绍pythonfor画三角形,内容包括python如何用for循环写一个三角形,怎么用python画三角形并填色以及画五角星并且填色(急),python怎么绘制等边三角形,用turtle。from turtle import *for i in range(3):fd(50)lt(120)fd是指前进,lt

资讯

pythonfoo()

阅读(6)

本文主要为您介绍pythonfoo(),内容包括Python中经常看到foo,请问foo是什么意思呢,Python中经常看到foo,请问foo是什么意思呢,pythonfoo=lambdax:x*x是什么意思。这是Python函数可变参数 args及kwargs*args表示任何多个无名参数,它是一个tupl

资讯

pythonifororin

阅读(6)

本文主要为您介绍pythonifororin,内容包括pythonor语句的用法,python,if语句用or作条件判断不执行else,Python里or的用法。if条件语句后面需要跟随bool类型的数据,即True或者False。然而,如果不是bool类型的数据,可以将其转换成bool类型的数据

资讯

python字符串ascii

阅读(6)

本文主要为您介绍python字符串ascii,内容包括Python怎样将字符串转换为ASCII码,python字符串是不是ascii,Python怎样将字符串转换为ASCII码。如果要判断某路径是否包换中文,可以用正则表达式判断是否含有双字节字符>>> import re>>> re.sear

资讯

pythonwebservice调用

阅读(10)

本文主要为您介绍pythonwebservice调用,内容包括python怎么调用webservice?,python怎么调用webservice,如何用python写webservice。Class.forName(className) 实际上是调用Class.forName(className, true, this.g

资讯

python默认路径

阅读(5)

本文主要为您介绍python默认路径,内容包括如何设置默认的python路径,python多个版本默认路径设置,如何设置python模块的默认搜索路径。1. sudo gedit /usr/local/lib/python2.7/site-packages/<my_python_path

资讯

pythoneditplus

阅读(5)

本文主要为您介绍pythoneditplus,内容包括怎么用editplus配置python,怎么用editplus配置python,editplus怎么运行python程序。首先下载安装Editplus和python,安装很简单下载之后双击一直默认下一步就可以搞定,不过在安装editplus的时候他们捆

资讯

python中的file

阅读(5)

本文主要为您介绍python中的file,内容包括python中的file()是什么意思呢,python中的file是什么意思呢,pythonfile怎么打开。是file类的构造函数,参数和内置的open()函数相同,在打开文件时更推荐使用open(),所以更多用于测试文件类型的测试:isins

资讯

Python自动化交易

阅读(6)

本文主要为您介绍Python自动化交易,内容包括怎样用Python写一个股票自动交易的程序,用Python3能写外汇自动化交易吗,python全栈和python自动化课程的区别在哪。概率炒股法:下面方法买涨不买跌,同时避免被套,缺点,手续费比较高,但完全可以吃完整

资讯

编程小白学python

阅读(7)

本文主要为您介绍编程小白学python,内容包括编程小白目前开始学Python感觉真的好难懂有什么基础的书籍之类,编程小白一个,应该先学Python还是直接可以学java,不求成为计算机,小白学python怎么快速入门多久能完成一个项目。感觉不是太多是因

资讯

python调用c接口

阅读(2)

本文主要为您介绍python调用c接口,内容包括python怎么调用c语言接口,如何让python调用C和C++代码,如何让python调用C和C++代码。ctypes: 可直接调用c语言动态链接库。使用步骤:1&gt; 编译好自己的动态连接库2&gt; 利用ctypes载入动态连接库3&g

资讯

pythonanzhuang

阅读(1)

本文主要为您介绍pythonanzhuang,内容包括python安装后怎么打开,如何安装python,怎么安装python模块,如何安装python模块,常用安装方式。首先打开安装程序压缩包,进行解压缩,解压到设置的位置,耐心等待解压完成

资讯

python安装路径查看

阅读(2)

本文主要为您介绍python安装路径查看,内容包括怎么查看python的安装路径,怎样查看python安装路径,怎么查看python的安装路径。方法如下:linux查看python安装位置。有时我们需要查看python的安装位置,好安装第三方库,linux可以先python进入p

资讯

python空格分割

阅读(2)

本文主要为您介绍python空格分割,内容包括pythonsplit()默认以空格分割,现在字符串里有#和空格,怎样是split,python怎么用空格分隔两个整数,python如何实现字符串按空格分割,并逐行输出。借助于lstrip()提取左边空格>>>s = A B C >>>s.lstri

资讯

python目录复制

阅读(2)

本文主要为您介绍python目录复制,内容包括python如何复制整个文件夹到另一个目录下连文件夹也要复制过去,python列表怎么复制,pythonwindows下如何复制整个文件夹到另一个目录下连文件夹也要。假设现有列表为a, 复制一个新用 b=a 这个语句,并

资讯

python所有模块

阅读(2)

本文主要为您介绍python所有模块,内容包括python十大必学模块是什么,Python开发中常用的模块,python模块。这个不能一概而论的,据说python目前高达27万+个库,看你学习的方向必学模块也有不同,简单列举: 网络通用方面:urllib -网

资讯

python任务调度

阅读(2)

本文主要为您介绍python任务调度,内容包括python是否有任务调度的类,python是否有任务调度的类,如何用python简单的设计开发异步任务调度队列。首先,客户端可以直接扔任务到一个web services的接口上 –》 web api接收到任务后,会根据客户端

资讯

python判断字符串是否数字

阅读(2)

本文主要为您介绍python判断字符串是否数字,内容包括Python中判断字符串是否是数的方法,python判断字符串是否为数字,python判断字符串是否为数字。正则匹配法比较严谨一些,你说的数字有没有条件限制?下面是一些常用的判断各种数字的正则表达

资讯

python标准库chm

阅读(2)

本文主要为您介绍python标准库chm,内容包括怎么查看Pythonapi文档,Python常用的标准库以及第三方库,Python常用的标准库以及第三方库。Python常用的标准库有http库。第三方库有scrapy,pillow和wxPython.以下有介绍:1. Requests.Ken

资讯

python字符串最后一位

阅读(2)

本文主要为您介绍python字符串最后一位,内容包括python取字符串中最后的一个特定字符之后的字符串,python中如何取出字符串中最后一个特定字符后的字符串,python怎么把字符串最后一个字符去掉。先将字符串转换成列表,之后再修改列表中的元素