python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用。smtplib模块主要负责发送邮件,email模块主要负责构造邮件。smtplib模块主要负责发送邮件:是一个发送邮件的动作,连接邮箱服务器,登录邮箱,发送邮件(有发件人,收信人,邮件内容)。email模块主要负责构造邮件:指的是邮箱页面显示的一些构造,如发件人,收件人,主题,正文,附件等。1.smtplib模块smtplib使用较
系统 2019-09-27 17:46:47 1727
正则表达式是Python程序设计中非常实用的功能,本文就常用的正则表达式做一汇总,供大家参考之用。具体如下:一、字符串替换1.替换所有匹配的子串用newstring替换subject中所有与正则表达式regex匹配的子串result,number=re.subn(regex,newstring,subject)2.替换所有匹配的子串(使用正则表达式对象)reobj=re.compile(regex)result,number=reobj.subn(news
系统 2019-09-27 17:46:38 1727
声明本文基于Python2.7语言,给出判断列表是否已排序的多种方法,并在作者的WindowsXP主机(PentiumG6302.7GHz主频2GB内存)上对比和分析其性能表现。一.问题提出Haskell培训老师提出一个问题:如何判断列表是否已经排序?排序与否实际只是相邻元素间的某种二元关系,即a->a->Bool。所以第一步可以把二元组列表找出来;第二步是把这个函数作用于每个元组,然后用and操作。老师给出的实现代码如下:pairlst=ziplst(t
系统 2019-09-27 17:46:24 1727
今天想用python做个demo,含两个子图的动态gif,代码如下:importmatplotlib.pyplotaspltimportimageio,osimportmatplotlib#plt.ion()fig=plt.figure(0)ax1=plt.subplot(121)ax2=plt.subplot(122)ax1.set_title('input')ax2.set_title('GT')foriinrange(1000):img1=plt.i
系统 2019-09-27 17:46:22 1727
在表达式中引用变量时,Python会按照如下的顺序遍历各个作用域,寻找该变量:当前函数作用域任何外围作用域(比如包含当前函数的其他函数)global作用域,即代码所在的模块的作用域如果上述作用域内都找不到变量,就会报NameError异常。但是对变量赋值时,规则会有所不同。如果当前作用域变量已存在,那么其值会被替换。如果不存在,则会视为在当前作用域定义新变量,而不是向外围作用域中寻找。如下函数deffunction():flag=Truedefhelper
系统 2019-09-27 17:46:14 1727
Python对文件的操作还算是方便的,只需要包含os模块进来,使用相关函数即可实现目录的创建。主要涉及到三个函数:1、os.path.exists(path)判断一个目录是否存在2、os.makedirs(path)多层创建目录3、os.mkdir(path)创建目录直接上代码:复制代码代码如下:defmkdir(path):#引入模块importos#去除首位空格path=path.strip()#去除尾部\符号path=path.rstrip("\\"
系统 2019-09-27 17:46:08 1727
本文实例讲述了Python实现根据指定端口探测服务器/模块部署的方法,非常具有实用价值。分享给大家供大家参考借鉴。有些时候,在维护过程中,服务器数量非常多。应用模块部署在不同服务器上。有时维护人员做了模块迁移,而未及时同步至手册中。查找比较困难。于是,产生Python根据应用端口进行探测,获取模块部署。设想非常简单:通过简单的tcp链接,如果能够成功的建立,立即断开,防止影响业务。表示模块在某服务器上有部署。具体功能代码如下:#!/bin/envpytho
系统 2019-09-27 17:46:05 1727
在Python3中,将中文进行urlencode编码使用函数urllib.parse.quote(string,safe='/',encoding=None,errors=None)而将编码后的字符串转为中文,则使用urllib.parse.unquote(string,encoding='utf-8',errors='replace')示例代码如下:test="微信公众账号比特量化"print(test)new=urllib.parse.quote(te
系统 2019-09-27 17:45:54 1727
listpython的列表内部实现是数组(具体实现要看解析器,CPython的实现),因此就有数组的特点。超过容量会增加更多的容量,set,get是O(1),但del,insert,in的性能是O(n)。具体的看下表,'n’是容器中当前的元素数,'k’需要操作的元素个数OperationAverageCaseAmortizedWorstCaseCopyO(n)O(n)Append[1]O(1)O(1)InsertO(n)O(n)GetItemO(1)O(1
系统 2019-09-27 17:45:52 1727
dic={'key1':'value1','key2':'value2'}一、增if'key3'notindic:dic['key3']='value3'二、删deldic['key1']#删除键是'Name'的条目dic.clear()#清空字典所有条目deldic#删除字典三、改dic['key1']='value0'#更新四、查遍历forkey,valueindic.items():print(key,value)#同时遍历key,valuefori
系统 2019-09-27 17:45:50 1727