PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成。PyQt5本身拥有超过620个类和6000函数及方法。在可以运行于多个平台。PyQt5拥有双重协议,自由开发者可以选择免费的GPL版本,仅当你准备将PyQt用于商业活动时,你必须为此交付commercial许可费用。以下是小编为你整理的学python前要学什么
QtCore模块涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及到的 time、文件、目录、数据类型、文本流、链接、mime、线程或进程等对象。
QtGui模块涵盖多种基本图形功能的类; 包括但不限于:窗口集、事件处理、2D图形、基本的图像和界面 和字体文本。
QtWidgets模块包含了一整套UI元素组件,用于建立符合系统风格的classic界面,非常方便,可以在安装时选择是否使用此功能。
QtMultimedia模块包含了一套类库,该类库被用于处理多媒体事件,通过调用API接口访问摄像头、语音设备、收发消息(radio functionality)等。
QtBluetooth模块包含了处理蓝牙活动的类库,它的功能包括:扫描设备、连接、交互等行为。
QtNetwork模块包含用于网络编程的类库,这组类程序通过提供便捷的TCP/IP 及 UDP 的 c/s 程式码集合,使得基于Qt的网络编程更容易。
import smtplibimport smtplib
from email.mime.text import MIMEText
to_list=["xxx@xxxxx"]
host="smtp.xxx"
username="xxx"
password="xxx"
postfix="xxx"
def send_plain_mail(send_list,title,content):
me="<"+username+"@"+postfix+">"
msg = MIMEText(content,_subtype='plain',_charset='gb2312')
msg['Subject'] = title
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
server = smtplib.SMTP()
server.connect(host)
server.login(username,password)
server.sendmail(me, to_list, msg.as_string())
server.close()
return True
except Exception, e:
print str(e)
return False
if __name__ == '__main__':
email_title = "title::"
email_content = "content::"
if send_plain_mail(to_list,email_title,email_content):
print "send success !"
else:
print "send failed !"
导入re模块
#导入正则表达式模块
import re
再来一个简单的例子演示
#简单演示
s='123abc123abc123abc'
print s
print re.findall(r'123',s)
#'r'...''表示raw字符串
#功能字符:'.','*','?','^','$','/'
#分界符:'[',']','(',')','{','}'
#转义字符:'d','w','s','b'
#'|'表示或
s='I have a pen and I have a apple'
print s
print re.findall(r'I have a pen|apple',s)
print re.findall(r'I have a (?:pen|dog)',s)
使用无捕获组与一般或'|'的区别
无捕获组使用'(?:...)'格式
#无捕获组:'(?:)'
s='ababababba babab babababab'
print re.findall(r'/b(?:ab)+/b',s)
#'.'匹配除换行符之外的所有字符,若选用re.S则包括所有字符
s='123n456n789'
print s
print re.findall(r'.+',s)
print re.findall(r'.+',s,re.S)
#'^'匹配开头'$'匹配结尾
#'d'匹配数字
#'D'匹配非数字
#'w'匹配字母和数字
#'W'匹配非字母和数字
#'s'匹配空格符、制表符、回车符等表示分隔意义的字符
#'S'匹配非间隔符
#'A'匹配开头
#'Z'匹配结尾
s='123nabcn123'
print s
print re.findall(r'^d+',s,re.M)
print re.findall(r'Ad+',s,re.M)
print re.findall(r'd+$',s,re.M)
print re.findall(r'd+Z',s,re.M)