随笔分类 -  Python

摘要:Qt designer 设计流程: 创建一个 PyQt4 的步骤,通常的方法是用 QtDesigner 工具创建 GUI 界面。可以在窗口 上添加部件,并可以对部件进行一些属性配置。一般的过程如下:使用 QtDesinger 创建 GUI 界面;在属性编辑器中修改部件 widget 的名字;使用 pyuic4 工具生成一个 python 类通过 GUI 对应的类来运行程序;通过设置自己的 slots 来扩展功能;当使用窗口部件的时候,可以从 PyQt’s Classes 查询。Qt 易于理解的方式来命名函 数,例如:setText。该文档是学习PyQt期间对一些学习资料进行的总结,适合刚开始. 阅读全文
posted @ 2013-07-30 22:14 Hala 阅读(615) 评论(0) 推荐(0) 编辑
摘要:SimpleXMLRPCServer模块为XML-RPC服务端的写入提供了一个基本的框架。利用SimpleXMLRPCServer服务器既可以一直空闲,也可以利用CGIXMLRPCRequestHandler来嵌入到一个CGI环境中。 XML-RPC(Remote Procedure Call)是通过HTTP传输协议,利用XML格式的远端程序调用方法。客户端可以调用服务端带参数的方法并获取返回的结构数据。(服务端的名字是一个URI)。这个模块支持写入XML-RPC端的代码。它用来处理所有转换的细节在在整合的Python对象和XML报文之间。Eg1服务端代码: 1 from SimpleX... 阅读全文
posted @ 2013-07-30 22:11 Hala 阅读(4403) 评论(0) 推荐(0) 编辑
摘要:Python编程规范【1】缩进:4空格一个缩进层次。禁止混用制表符和空格。【2】编码:所有Python文件首部表上# -*- coding: utf-8 -*-。设置编辑器,默认保存为utf-8格式。【3】注释:坚持适当注释原则。以‘#’开头,注意与对应代码块对齐。【4】空格:坚持适当加入原则。一元前缀运算符不加空格;二元算术、逻辑运算符前后加空格; ‘:’用在行尾前后皆不加空格,用在非行尾时两端加空格;括号(含圆括号、方括号和花括号)前后不加空格;逗号后面加一个空格,前面不加空格;【5】空行:适当添加。在类、函数的定义之间加空行;在import不同种类的模块间加空行;在函数中的逻辑段落间加空 阅读全文
posted @ 2013-07-14 20:45 Hala 阅读(863) 评论(0) 推荐(0) 编辑
摘要:1、套接字1.1 socket模块套接字是网络编程中的一个基本组件,一般包括服务器端套接字和客户端套接字。创建服务器端过程如下: 1 import socket 2 3 s = socket.socket() 4 5 host = socket.gethostname() 6 port = 1234 7 try: 8 s.bind((host, port)) 9 except Exception, e:10 print e11 s.close()12 13 s.listen(5)14 while True:15 c, addr = s.accept()16 ... 阅读全文
posted @ 2013-07-14 05:37 Hala 阅读(1232) 评论(0) 推荐(1) 编辑
摘要:使用数据库的好处:a、支持数据的并发访问,多个用户同时对基于磁盘的数据进行读写而不造成任何文件的损坏;b、支持根据多个数据字段或属性进行复杂的搜索;1、如何操作数据库,API数据库的种类有很多,并且它们的功能基本都是一样的,为了对数据库进行统一的操作,大多数语言都提供了简单的、标准化的数据库接口(API)。为了易于编写跨数据库的程序,所有数据库的包装模块都应当遵循这个接口。2、支持的API函数连接数据库connect(),该函数返回连接对象,代表了与要连接的数据库的会话。连接对象支持一下方法:close()关闭连接之后,连接对象和它的游标均不可用commit()如果支持的话提交挂起的事务,否则 阅读全文
posted @ 2013-06-15 20:28 Hala 阅读(1253) 评论(0) 推荐(1) 编辑
摘要:最近在做项目的过程中自己常常带有抵触的情绪问题,上级让更改某某功能的实现策略,自己表现的总是不特别积极,因为我感觉自己的意见没有得到尊重。 由于自己在项目中负责的是界面部分的实现,所以设计一些功能时需要考虑界面的显示风格以及用户的操作习惯。例如:实现对一个操作区中对象的删除过程,能够想想到的用户操作习惯有如下几种:1、选中对象,右键显示删除菜单;2、选中对象,直接按下delete快捷键;3、选中设备,点击工具栏设计的删除按钮;4、在界面上设计一个删除区域,将设备拖拽到该区域时完成删除操作;5、直接将对象拖拽到创建该对象的区域完成删除操作;其中4和5是互斥的,再做该功能前跟上次讨论,我的观... 阅读全文
posted @ 2013-06-13 23:30 Hala 阅读(542) 评论(1) 推荐(0) 编辑
摘要:1、模块模块就是子程序,模块主要用来导入,但导入模块并不意味着在导入时执行某些操作。模块主要用于定义,比如变量、函数和类,并且导入模块多次和导入模块一次效果是一样的。1.1 模块中定义函数1 # hello.py2 def hello():3 print "Hello, world!"4 5 >>>import hello.py6 >>>Hello,world!注意:使用reload(module)可以重新载入模块并将其返回。1.2 测试模块中的函数每个模块都有一个__name__属性变量,在“主程序”中,变量__name__的值是‘__ 阅读全文
posted @ 2013-04-24 20:00 Hala 阅读(1090) 评论(0) 推荐(1) 编辑
摘要:1、旧式类和新式类 Python中类的工作方式正在发生变化。在3.0以前的版本中Python内有两种类,旧式类和新式类,新式类在2.2版本中引入,它提供了一些新的特征(比如super函数和property函数,而旧式类中没有)。为了创建新式的类,必须直接或间接子类化object,或者在模块的开始处添加赋值语句__metaclass__=type。2、方法2.1 方法分类魔法方法:Python中一些特殊的方法,名字是以双下划线开始和结束,这些方法和类中的其他方法没有什么不同,只是在某些情况下类对象会自动调用这些特殊的方法;构造方法:Python中构造方法被命名为__init__,在对象创建完成. 阅读全文
posted @ 2013-04-20 21:44 Hala 阅读(1494) 评论(0) 推荐(0) 编辑
摘要:本节主要介绍Python中异常处理的原理和主要的形式。1、什么是异常Python中用异常对象来表示异常情况。程序在运行期间遇到错误后会引发异常。如果异常对象并未被处理或捕获,程序就会回溯终止执行。2、抛出异常raise语句,raise后面跟上Exception异常类或者Exception的子类,还可以在Exception的括号中加入异常的信息。>>>raise Exception('message')注意:Exception类是所有异常类的基类,我们还可以根据该类创建自己定义的异常类,如下:class SomeCustomException(Exception 阅读全文
posted @ 2013-03-28 23:16 Hala 阅读(1090) 评论(0) 推荐(1) 编辑
摘要:类这个概念是学习面向对象语言要掌握的知识点,Python做为其一也没啥例外,概念上都差不多,只是在类的定义和使用格式上有些许的差别。这里主要介绍一下Python类的定义和使用方法,并且回顾一下使用类对象的好处。1、类和对象“面向对象程序设计”中对象指的是什么?对象基本上可以看做数据(特性)以及由一系列可以存取、操作这些数据的方法所组成的集合。特性只是作为对象的一部分变量,方法则是存储在对象内的函数。绑定在对象内的方法和其他函数的区别在于方法总是将对象的本身作为自己的第一个参数,这个参数一般为self。类是对象的一个集合,而对象则是类的一个实例。当一个对象所属的类是另一个类的子集时,我们称前面的 阅读全文
posted @ 2013-03-26 23:05 Hala 阅读(1127) 评论(0) 推荐(0) 编辑
摘要:抽象是隐藏多余细节的艺术,定义处理细节的函数可以让程序更加的抽象。1、函数定义函数使用def来定义,函数名后面可以加入参数。函数可以被调用,它执行某种行为,并返回一个值。内建的callable函数可以用来判断一个函数是否可以被调用。函数的注释:#,加强对函数的理解函数的文档字符串:在函数定义的下方写的字符串,它被作为函数的一部分进行存储。有两种方法能够访问,一种是fun.__doc__,一种是help(fun)函数的返回值:即使函数没有显示地显示return语句,或者return语句为空,函数还是存在默认返回值None的。2、函数参数2.1 位置参数(参数的位置很重要)当传入函数的参数是字符、 阅读全文
posted @ 2013-03-21 23:36 Hala 阅读(1540) 评论(0) 推荐(0) 编辑
摘要:1、扩展print和import1.1 使用逗号输出在打印多个表达式时,可以用逗号隔开;print "a", "b"如果在打印语句的结尾加上逗号,接下来的打印语句会和前一条打印语句在同一行输出;print 'a',pring 'b'1.2 模块的导入导入某个模块 import somemodule导入模块中的某个函数 from somemodule import somefunction导入模块中的所有函数 from somemodule import *2、赋值2.1 序列解包序列解包(sequence unpackin 阅读全文
posted @ 2013-03-19 23:09 Hala 阅读(320) 评论(0) 推荐(0) 编辑
摘要:1、打开文件open(name[,mode[,buffering]])open函数使用一个文件名作为其唯一的一个强制参数,然后返回一个文件对象。模式(mode)和缓冲区(buffering)是可选的。模式: 'r' 读模式 'w' 写模式 'a' 追加模式 'b' 二进制模式,添加到其他模式中使用 '+' 读/写模式,添加到其他模式中使用'+'参数可以用来任何模式后,指明读和写都是可以的。'b'模式改变处理文件的方法。二进制模式和文本模式的区别:在使用二进制模式时,python会原样 阅读全文
posted @ 2013-03-17 20:52 Hala 阅读(2354) 评论(0) 推荐(1) 编辑
摘要:字典是Python中唯一内建的映射类型,是由键/值对来组成,键可是是数字、字符串、甚至元组,但是键必须是唯一的。1、字典的创建字典的创建很简单,以下格式就能创建字典:dictvalue = {key1 : value1, key2 : value2, ...}也可以使用dict()函数来创建,它是通过序列或者元组对,或者是关键字参数dict(key1 = value1, key2 = value2, ...)View Code 1 item = dict((['name', 'xiaoli'],['age', 12])) 2 item 3 {&# 阅读全文
posted @ 2013-03-13 22:36 Hala 阅读(406) 评论(0) 推荐(0) 编辑
摘要:字符串都是不可变的;字符串格式化使用格式化操作符“%”来实现;如果右操作数是元组的话,则其中的每个元素都会被单独格式化,每个值都需要一个对应的转换说明符。1 >>> "%s plus %s equal %s" % (1, 1, 2)2 '1 plus 1 equal 2'1、基本的转化说明符:1.1 字段宽度和精度 转化说明符可以包含字段的宽度和精度。字段宽度是转换后的值所保留的最小字符个数,精度则是结果中应该包含的小数位数;这两个参数都是整数(首先是字段宽度,然后是精度),通过点号(.)分隔。1 >>> '%10 阅读全文
posted @ 2013-01-31 23:51 Hala 阅读(420) 评论(0) 推荐(0) 编辑
摘要:接触python有一段时间了,在读书期间接触了好几门语言,但每门都感觉自己是个门外汉,都不精通,工作中总觉得自己的基础自己不牢靠。现在开始将自己学到的知识总结罗列出来,理一理自己的思路,也希望能够和学习python的同学相互交流,共同进步。1、数据结构是将数据元素以某种方式组织在一起的数据集合,这些数据元素既可以是数字、字符,也可以是其他类型的数据结构。在python中最基本的数据结构是序列sequence,序列中的每个元素都有一个位置信息与其对应,称这个位置信息为索引。python中最常用的序列为列表和元组,其他的类型还有字符串、Unicode字符串、buffer对象和xrange对象。列表 阅读全文
posted @ 2013-01-26 00:22 Hala 阅读(319) 评论(0) 推荐(0) 编辑