Python

     Python貌似越来越流行了。项目需要,研究下下,没有一下子去研究语法,语法看了个大概,看得懂程序就行了,以后再慢慢看。主要看的是应用。

     搭程序环境,这个语言不像java,c++资料众多,查阅方便。

     1,首先下载Python.官方网站下载可能会连不上,可以在这里下载http://corepython.com/,但是有个版本问题,最新的是3.0了,这里有一个问题,像《Python核心编程》书里有些程序运行会出错,连最简单的“Hello World!”也不能print出来。推荐下载2.6版的。网上有罗列3.0和之前版本的区别,可以google看下。安装简单,一路next。

 

     2,用什么IDE写Python程序呢?自带的有个IDLE。还有很多功能强大的Python IDE选择,但有些是要收费才能使用。试了几个,最后选择的开发环境是eclipse+pydev。eclipse是IBM开源的项目,N年前玩java时,无聊时装过,没玩多久就删了,因为不用java了。装上pydev插件就可以在上面开发Python了。这里有详细的说明,一步步走下去安装。http://www.rose-hulman.edu/class/csse/resources/Eclipse/eclipse-python-configuration.htm。但在按说明安装时有个问题,进行到第二步Download PyDev from within Eclipse 时,按文档方法没法连接到那个网站下载pydev。解决方法是直接手动下载pydev,然后解压缩出两个文件夹,features和plugins。把这两个文件夹的文件copy到eclipse相关目录下就行了。所谓相关目录,点开Eclipse文件夹看就清楚了。

 

     3,Python写UI程序用的是pyqt4库,在这下载http://www.riverbankcomputing.co.uk/software/pyqt/download,下载后直接安装就可以了,但是要先装好Python,不需要再去下载qt库,qt是挪威一个小但伟大的公司开发的跨平台UI库。现在被Nokia收购了。所以下载qt的东西会跳到nokia的网站。这里有个问题,之前设计UI,用的工具是qt designer,但是Nokia网站里只有Qt Creator,可能是Nokia把名字改了,没查到。简单用了下Qt Creator,和教程区别不大。这里有个很好的pyqt4教程http://www.rkblog.rk.edu.pl/w/p/introduction-pyqt4/。用Qt Creator设计的ui文件需要用pyuic4命令将其转化成Python程序,比如在命令行下输入:pyuic4 test.ui > test_ui.py,然后再使用。补:找到qt designer了,在Python26\Lib\site-packages\PyQt4\bin目录下,其实和Qt Creator是一样的。

    这里也有个不错的网站http://zetcode.com/tutorials/pyqt4/。从程序角度上讲使用pyqt4。

    在这里查询类http://www.riverbankcomputing.com/static/Docs/PyQt4/html/classes.html

 

    4,Python对数据库的操作是用一个包MySQLdb,在这里下载http://sourceforge.net/projects/mysql-python/。但是如果操作系统是 Windows,安装会麻烦,查了很久没找到正确的方法。得到和http://old.nabble.com/Python-not-importing-mysqldb-td23223941.html这里一样的错误。还好这个网站给了个windows安装包的网址http://www.codegood.com/archives/4。下载安装后,用Python写import MySQLdb,如果没有报错,说明安装成功。

       数据库用的是MySQL,这里有MySQL简单入门http://www.phpfans.net/article/mysql/w1171770261_14906.html     

       一个简单的数据库操作程序如下,已经创建好的数据库名是:database,里面的table名是:class. 

代码
 1 import time, MySQLdb    
 2 
 3 conn=MySQLdb.connect(host="localhost",user="root",passwd="***",db="database")    
 4 cursor = conn.cursor()  
 5 
 6 sql = "insert into class(id,infor) values(%s,%s)"   
 7 param = (1212,"Han MM")    
 8 = cursor.execute(sql,param)    
 9 print n   
10 
11 = cursor.execute("select * from test")    
12 for row in cursor.fetchall():    
13     for r in row:    
14         print r    
15                
16 conn.commit() #这句是提交到数据库,否则数据库里不会插入(3,"female")
17 
18 conn.close() 

      将NULL插入数据库麻烦,google了N久,没找到,这里给条实验成功的语句参考。 

age = 10
name 
= QtCore.QString('li lei')
sql 
= '''insert into worker(ID,name,age)
values(null,'%s','%d')
''' % (name,age)
cur.execute(sql)
cur = self.conn.cursor() 
cur.execute(
"select * from %s where name = '%s' " % (table,name))        
data 
= cur.fetchall() 
for item in data:
     print item[
0],item[1]

5.在这里下win32API扩展包http://sourceforge.net/projects/pywin32/

       列几个有用的网站: 

http://timgolden.me.uk/python/win32_how_do_i.html

   windows自动选择程序执行文件

 

import sys
import pywintypes
import win32api
win32api.ShellExecute(0, 
'open''C:\\DSC_0077.JPG''','',1)

 6.程序最后发布

http://sourceforge.net/projects/py2exe/files/

1,将python命令加入环境变量

2,进入setup.py目录,命令行python setup.py py2exe

3.python安装目录下,如C:\Python26\Lib\site-packages\PyQt4\plugins的imageformats文件夹copy到生成的exe目录下。不然图片控件不会显示图像,如jpg这些。

4.py2exe 与win32com.shell

http://www.py2exe.org/index.cgi/win32com.shell

 

 

原文地址:https://www.cnblogs.com/fangxiang/p/1678206.html