视频网站设计论文,肥东网站制作,外国做爰网站,企业名称注册查询文章目录 语法def声明函数class声明类class 子类(父类) 继承 数据结构列表列表操作 元组元组操作 字典遍历字典 集合 文件读写读文件写文件 csv模块读入写入 time模块发送邮件制作二维码滚动广告 语法
def声明函数
class声明类
class 子类(父类) 继承
数据结构
列表
列表… 文章目录 语法def声明函数class声明类class 子类(父类) 继承 数据结构列表列表操作 元组元组操作 字典遍历字典 集合 文件读写读文件写文件 csv模块读入写入 time模块发送邮件制作二维码滚动广告 语法
def声明函数
class声明类
class 子类(父类) 继承
数据结构
列表
列表也称序列是 Python 中最基本的数据结构。
列表操作
import operator
list [海尔,海信,格力,美的,小米,奥克斯]print(list)
# 查询
print(list[0])
print(list[2])
print(list[-1])
print(list[-2])
print(list[1:3])
print(list[0:-3])# 增加
list.append(统帅)
print(list)
#修改
list[4] vivo
print(list)#删除
del list[-3]
print(list)#列表比较
a [1,2]
b [2,3]
print(operatro.eq(a,b):,operator.eq(a,b))#列表推导式
# [表达式 for 变量 in 列表]
# [out_exp_res for out_exp in input_list]
# 或者
# [表达式 for 变量 in 列表 if 条件]
# [out_exp_res for out_exp in input_list if condition]names [Bob,Tom,alice,Jerry,Wendy,Smith]
new_names [name.upper() for name in names if len(name) 3]
print(new_names)元组
Python 的元组与列表类似不同之处在于元组的元素不能修改。 元组使用小括号 ( )列表使用方括号 [ ]。
元组操作
tup (1,2,3,4,5,6,7)print(tup[1])
print(tup[0:3])print(tup[-1])
print(tup[0:-3])# 元组中的元素值不允许修改#删除元组
del tup#元组内置函数
# len(tuple) 元组长度
tuple1 (刘备,关羽,张飞,周瑜)
print(len(tuple1))# max(tuple) 元组最大值
print(max(tuple1))# min(tuple) 元组最小值
print(min(tuple1))# tuple(iterable) 将可迭代的序列转换为元组
list [曹操,司马懿,夏侯惇]
print(tuple(list))# 元组推导式
(expression for item in Sequence )
或
(expression for item in Sequence if conditional )字典
字典是另一种可变容器模型且可存储任意类型对象。 字典的每个键值 keyvalue 对用冒号 : 分割每个对之间用逗号(,)分割整个字典包括在花括号 {} 中
遍历字典
movie {
猫妖传:[黄轩,染谷将太],
无问东西:[章子怡,王力宏,祖峰],
超时空同居:[雷佳音,佟丽娅],
}name input(你想查询哪个演员)
for i in movie:actors movie[i]#取出字典的值if name in actors:print(name出演了电影i)for i in movie:i表示key值movie[i]表示vlaue值# 遍历字典values
for value in DictName.values():
# value的名字可以自行另取
# DictName是要遍历的字典的名称
# .values():是固定的用法# 遍历字典
for k,v in DictName.items():
#遍历字典的键值对k对应键v对应值
#k,v 的名字可以自己取DictName是字典名集合
文件读写
读文件
开——读——关
file open(D://test.txt,r,encodingutf-8)
fileContent file.read()
print(fileContent)
file.close()写文件
开——写——关
# w 写入模式会清空文件再写入a 追加写入
file open(D://test.txt,a,encodingutf-8)
file.write(诸葛亮\n)
file.write(赵云\n)
file.close()# 普通写法
file1 open(abc.txt,a)
file1.write(张无忌)
file1.close()# 使用with关键字的写法
with open(abc.txt,a) as file1:
#with open(文件地址,读写模式) as 变量名:#格式冒号不能丢file1.write(张无忌) #格式对文件的操作要缩进#格式无需用close()关闭csv模块
学习模块三问
模块有哪些函数可用 -可以通过dir()函数查询有哪些属性或方法可用-网上看文档或找教程使用格式是什么-从文档或教程中搜集案例
读入
import csvwith open(test.csv, newline , encoding utf-8) as f:#参数encoding utf-8防止出现乱码reader csv.reader(f)for row in reader:print(row)print(读取完毕)写入
import csv
with open(test.csv,a, newline,encodingutf-8) as f:writer csv.writer(f)writer.writerow([4, 猫砂, 25, 1022, 886])writer.writerow([5, 猫罐头, 18, 2234, 3121])time模块
# 第一行必不可少的调用模块。
import timeinput(欢迎使用“时间管理器”请按回车继续。)while True:task_name input(请输入任务名)task_time int(input(你觉得自己至少可以专注这个任务多少分钟输入 N 分钟))input(此次任务信息\n我要完成的任务%s\n我至少要专注%d分钟\n按回车开始专注%(task_name,task_time))# 下面应该要有两行代码自动记录可以计算以及可以打印的开始时间。start time.time()start_time time.strftime(%Y-%m-%d %H:%M:%S,time.localtime(time.time()))print(start_time)# 这里可以加一个倒计时实时显示还剩多少时间可参考左侧提供的资料。代码量大概有5行。for i in range(task_time * 60,0,-1):info 任务开始请保持专注还需要专注str(i)秒哦print(info,end)print(\b*(len(info)*2),end,flushTrue)time.sleep(1)print(你已经专注了{}分钟很棒~再加把劲完成任务.format(task_time))task_status input(请在任务完成后按输入y:)actual_time input(该任务实际用时为几分钟)if task_status y:# 下面应该要有两行代码自动记录可以计算以及可以打印的结束时间。# 有了自动记录的始末时间后记录的代码也需要随之改变。with open(timelog2.txt,a, encoding utf-8) as f:f.write(task_name 的预计时长为 str(task_time) 分钟\n)f.write(task_name 的实际时长为 str(actual_time) 分钟\n)again input(建立一个新任务请按 y, 退出时间日志记录器请按 q)if again q: breakelse:print(抱歉你的输入有误。请重启时间记录器。)print(愿被你善待的时光予你美好的回赠。)
发送邮件
import smtplib
import csv
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.utils import formataddr
from email.header import Header# 邮件内容
text 一个人的一生只有三天昨天今天和明天。
昨天已经过去永不复返我们要及时汲取昨天的经验和教训
今天已经和我们在一起我们要倍加珍惜脚踏实地做事情
明天将要到来我们要提前规划仰望星空# 接收人姓名邮箱数据
data [[wangcheng1,1622579887qq.com],[wangcheng,1041575391qq.com]]#写入收件人数据
with open(D://to_addrs.csv,w,newline) as f:writer csv.writer(f)for row in data:writer.writerow(row)# 发信方的信息发送邮件授权码
from_addr 1041575391qq.com
password osmoycuqfgvobddd# 收信方邮箱
to_addr 1041575391qq.com#发信服务器
smtp_server smtp.qq.com# 读取收件人数据并启动写信和发信流程
with open(D://to_addrs.csv,r) as f:reader csv.reader(f)for row in reader:to_addrsrow[1]msg MIMEText(text,plain,utf-8)msg[From] formataddr((str(Header(冉成科技,utf-8)),1041575391qq.com))msg[To] Header(to_addrs)msg[Subject] Header(测试Python发送邮件,utf-8)#开启发信服务这里使用加密传输server smtplib.SMTP()server.connect(smtp_server,25)server.login(from_addr,password)try:server.sendmail(from_addr,to_addrs,msg.as_string())print(恭喜发送成功)except:print(发送是被请重试)# 关闭服务器
server.quit()制作二维码
from MyQR import myqr
myqr.run(https://www.baidu.com,colorizedTrue,save_namerD:\demo_png.gif,pictureshe.gif,contrast1.5)滚动广告
# 运行前可将第8行改为 for i in range(20) 控制一下循环次数。
# 或者可以直接运行然后用“刷新网页”这种方法强行打断程序。import os, timedef main(): # 用函数封装可复用性会高一些可在其他的.py文件里调用该函数。content 风变编程陪你一起学Python # 广告词可自定义。while True:os.system(clear) # 完成清屏清屏和打印结合起来形成滚动效果。print(content)content content[1:] content[0] # 这行代码相当于将字符串中第一个元素移到了最后一个。time.sleep(0.25) # 你可以改下时间体会“循环周期”和“滚动速度”之间的关联。if __name__ __main__: # 类里面学到的检测方法在函数中其实也可以用。main()