0423 python学习总结(5)

0423 python学习总结

一.代码发送邮件

发送邮件基本流程:

import smtplib

1.连接邮箱服务器

connect = smtplib.SMTP_SSL('smtp.qq.com',465)

2.登录邮箱

connect.login('xxxx(发件人邮箱)','xxx(密码:如果是163邮箱直接使⽤邮箱的登录密码,如果是qq邮箱就使⽤授权码)')

3.准备邮件内容

from email.mime.multipart import MIMEMultipart       #构建一个邮件对应的类
from email.header import Header      #创建邮件主题的类
from email.mime.text import MIMEText        #创建邮件内容的类
1)创建一个空的邮件对象
email = MIMEMultipart()
2)设置收件人信息
email['to'] = 'xxxxx(收件人邮箱'
3)设置发件人信息
email['from'] = 'Vier<xxxx(发件人邮箱)>'
4)设置邮件主题
email['Subject'] = Header('第一次发送邮件','utf-8').encode()
5)添加正文

MIMEText(正文内容、类型)

类型:plain(普通文字对应的正文)、html(超文本)、base(附件和图片)

a.创建正文内容

msg = MIMEText('你在哪?','plain')

b.将正文内容添加到邮件中

email.attach(msg)

4.发送邮件

connect.sendmail('xxxx(发件人邮箱)', 'xxxxx(收件人邮箱', email.as_string())

5.关闭连接

connect.close()

二.发送附件

import smtplib
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.text import MIMEText

1.连接邮箱服务器

connect = smtplib.SMTP_SSL('smtp.qq.com',465)

2.登录邮箱

connect.login('xxxx(发件人邮箱)','xxx(密码)')

3.构建邮件

mail = MIMEMultipart()
mail['Subject'] = Header('发送附件','utf-8').encode()
mail['from'] = 'Vier<xxxx(发件人邮箱)>'
mail['to'] = 'xxxxx(收件人邮箱'

普通正文:MIMEText(字符串,‘plain’)

msg1 = MIMEText('cute!','plain','utf-8')
mail.attach(msg1)

附件:MIMEText(二进制类型的文件内容,‘base64’,‘utf-8’)

1)打开附件对应的文件,并获取邮件内容
data1 = open('tupian/cute.jpg','rb').read()
2)创建附件对象
file1 = MIMEText(data1,'base64','utf-8')
3)设置附件在邮件中显示的位置和格式(注意:filename后面的附件名称不能有中文)
file1['Content-Disposition'] = 'attachment;filename="cute.jpg"'
4)将附件添加到邮件中
mail.attach(file1)

4.发送文件

connect.sendmail('xxxx(发件人邮箱)','xxxxx(收件人邮箱',mail.as_string())

5.关闭连接

connect.close()

三.发送超文本

import smtplib
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.text import MIMEText

connect = smtplib.SMTP_SSL('smtp.qq.com',465)
connect.login('xxxx(发件人邮箱)','xxx(密码)')

mail = MIMEMultipart()
mail['Subject'] = Header('发送超文本','utf-8').encode()
mail['from'] = 'Vier<xxxx(发件人邮箱)>'
mail['to'] = 'xxxxx(收件人邮箱)'

#构建html格式正文
data1 = open('tupian/data.html',encoding='utf_8').read()
msg = MIMEText(data1,'html')
mail.attach(msg)
connect.sendmail('xxxxx(发件人邮箱)','xxxxx(收件人邮箱)',mail.as_string())
connect.close()

四.格式字符串

name = input('请输入姓名:')
age = int(input('请输入年龄:'))
gender = input('请输入性别:')

1.格式字符串

1).语法:

包含格式占位符的字符串%(数据1,数据2,数据3)

2)说明:

格式占位符

%s - 任何类型的数据占位

%d - 数字(整数)占位符,填充的时候会自动将数据转换成整数(直接去掉小数点后面的数)

%f - 数字占位符,填充的时候会让数字保留6位小数

%.Nf - 数字占位符,填充的时候会让数字保留N位小数(此类型下小数四舍五入)

案例:‘xxx今年xx岁’

msg = '%s今年%d岁' % (name , age)
print(msg)

练习1:“x先生/女士,你今年xx岁了!”

name = input('请输入你的姓名:')
age = int(input('请输入你的年龄'))
gender = input('请输入你的性别')
if gender == '男':
    print('%s先生,您今年%d啦!'%(name[0],age))
else:
    print('%s女士,您今年%d啦!'%(name[0],age))

五.常见函数

import os

os是python提供的专门用来处理文件或者文件夹的模块

0.路径

1)绝对路径:

文件或者文件夹在计算机中的全路径(Windows从盘开始写,而且程序写绝对路径的时候字符串最前面要加r)

2)相对路径:

前提:需要操作的文件或者文件夹在工程里面的时候才可以使用相对路径

a.用 . 开头表示当前目录(当前目录指的是当前代码文件所在的文件夹)

注意:如果相对路径是以./开头的,./可以省略

b.用 … 开头表示当前目录的上层目录

open(文件路径)

1.创建文件夹

os.mkdir(文件夹路径)

注意:创建文件夹的时候,如果文件夹已经存在会报错!

os.makdir('./names')
os.mkdir('./tupian/abc')

2.判断文件或者文件夹是否已经存在

os.path.exists(文件或者文件夹路径)

result = os.path.exists('./tupian/a')
print(result)

result = os.path.exists('./tupian/cute.jpg')
print(result)

在tupian(一个文件夹)下面创建img文件夹

if not os.path.exists('./tupian/img'):
    os.mkdir('./tupian/img')

3.罗列出指定文件夹中所有的内容

os.listdir(文件夹路径)

content = os.listdir('./tupian')
print(content)

4.判断是否是文件或者文件夹

1) os.path.isfile(路径) - 判断指定文件对应的内容是否是文件
2) os.path.isdir(路径) - 判断指定文件对应的内容是否是文件夹
result = os.path.isfile('./tupian/cute.jpg')
print(result)
for name in content:
    if os.path.isfile('./tupian/%s'%(name)):
        print(name)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值