python常用库总结(II)

python常用库总结(II)

1. 发送邮件

用于发送邮件,使用该模块必须先导入模块:

(1)smtp

import smtplib

  • 创建SMTP的操作对象并连接smtp目标服务器,可以是163、QQ等 server = smtplib.SMTP(mailserver, port)
  • 根据自己的账号登录目标服务器(自己的邮箱地址和邮箱授权码)server.login(sender, passwd)
  • 调用对象中的方法,发送邮件到目标地址server.sendmail(sender, receive, msg.as_string())

常用邮箱的smtp服务器地址:
新浪邮箱:smtp.sina.com,搜狐邮箱:smtp.sohu.com,qq邮箱:smtp.qq.com,网易邮箱:smtp.163.com

(2)email

from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart

如果构造一个MIMEText对象,就表示一个文本邮件对象,如果构造一个MIMEImage对象,就表示一个作为附件的图片对象,要把多个对象组合起来,就用MIMEMultipart对象,他代表的是整个邮件。

A.MIMEText对象中有三个需要我们设置的参数,一个是正文内容,一个是正文内容的类型,例如:”text/plain”和”text/html”,一个是正文内容的编码。text_sub = MIMEText(connect,‘plain’, ‘utf-8’)

2. json yaml 文件处理

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。JSON的数据格式其实就是python里面的字典格式,里面可以包含方括号括起来的数组,也就是python里面的列表。
import json

  • json.dump() 将python数据对象以JSON格式数据流的形式写入到文件
  • json.load() 解析包含JSON数据的文件为python对象
  • json.dumps() 将python数据对象转换为JSON格式的字符串
  • json.loads() 将包含JSON的字符串、字节以及字节数组解析为python对象

YAML是一种直观的能够被电脑识别的的数据序列化格式,容易被人类阅读,并且容易和脚本语言交互。YAML类似于XML,但是语法比XML简单得多,对于转化成数组或可以hash的数据时是很简单有效的。编程时写配置文件,比xml快,比ini文档功能更强。YAML是专门用于写配置文件的语言,非常简洁和强大,远比JSON格式方便。

import yaml
	f = open(ymlPath, 'r')
	cfg = f.read() # 读取的结果是 字符串
	d = yaml.load(cfg) # 用load方法转字典	
	a = {'name': 'chenchen',
		'race': 'Human',
		'traits': ['Two_Hand', 'Two_Eye']
	}
	ret = yaml.dump(a) # 用dump方法转yaml文档
  • load(),解析yaml文档,返回一个Python对象;
  • load_all(),如果是string或文件包含几块yaml文档,可用该方法来解析全部的文档,生成一个迭代器;
  • dump(),将一个Python对象生成为一个yaml文档;
  • dump_all(),将多个段输出到一个yaml文档中。

3. hashlib 哈希函数

hashlib 是一个提供了一些流行的hash算法的 Python 标准库,主要提供字符加密功能,将md5和sha模块整合到了一起,支持md5,sha1, sha224, sha256, sha384, sha512等算法。

MD5是最常见的摘要算法,速度很快,生成结果是固定的16字节,通常用一个32位的16进制字符串表示。SHA1算法更安全点,它的结果是20字节长度,通常用一个40位的16进制字符串表示。而比SHA1更安全的算法是SHA256和SHA512等等,不过越安全的算法越慢,并且摘要长度更长。

from hashlib import md5, sha1
m = hashlib.sha256() # 通过构造函数获得一个hash对象
m.update(b’Nobody inspects’) # 使用hash对象的update方法添加消息
m.digest() # 获得bytes类型的消息摘要

4. getpass

getpass是python内置的获取密码及用户名的模块。getpass()函数用于从控制台输入一行字符串,关闭了回显(输入时不显示输入的字符串),适用于用密码的输入。
使用该模块必须先导入模块:import getpass

两个函数:

  • getuser:该函数返回登陆的用户名,不需要参数
  • getpass:会显示提示字符串, 关闭键盘的屏幕回显,然后读取密码
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值