python学习之路 第三天
1、set集合:去掉重复字段
set.difference()找出不同并创建一个新的集合,不改变原来集合;
set.difference_update() 改变原来集合,剔除掉括号内容;
set.discard() 移除元素;
set.intersection() 取交集;
set.symmetric_difference() 对称差,差集。
2、set.difference() 与 set.symmetric_difference() 对比
#!/usr/bin/env python3
s1 = set([11,22,33])
s2 = set([22,44])
ret1 = s1.difference(s2)
ret2 = s1.symmetric_difference(s2)
print(ret1)
print(ret2)
运行结果:{33, 11} {33, 11, 44} ret1只循环了s1,ret2循环了s1后又循环了s2,循环2次。
3、collections系列:
counter 计数器;
most_common 取前几位;
elements() 原生的值;
subtract() 相减,减去括号内出现的次数;
orderedDict 有序字典;
defaultdict 默认字典;
4、#!/usr/bin/env python3
import collections
f = collections.Counter('abcdabcdaabbd')
print(f)
运行结果:Counter({'a': 4, 'b': 4, 'd': 3, 'c': 2})
5、collections.namedtuple() 可命名元祖
#!/usr/bin/env python3
import collections
mytupleclass = collections.namedtuple('mytupleclass',['x','y','z'])
obj = mytupleclass(11,22,33)
print(obj.x)
print(obj.y)
print(obj.z)
运行结果:11 22 33
6、deque 队列
7、copy.copy() 浅拷贝
copy.deepcopy() 深拷贝
#!/usr/bin/env python3
import copy
dic = { "cpu":[80], "mem":[80], "disk":[80] }
print('before',dic)
new_dic = copy.copy(dic)
new_dic['cpu'][0] = 50
print(dic)
print(new_dic)
运行结果:
before {'cpu': [80], 'mem': [80], 'disk': [80]}
{'cpu': [50], 'mem': [80], 'disk': [80]}
{'cpu': [50], 'mem': [80], 'disk': [80]}
#!/usr/bin/env python3
import copy
dic = { "cpu":[80], "mem":[80], "disk":[80] }
print('before',dic)
new_dic = copy.deepcopy(dic)
new_dic['cpu'][0] = 50
print(dic)
print(new_dic)
运行结果:
before {'cpu': [80], 'mem': [80], 'disk': [80]}
{'cpu': [80], 'mem': [80], 'disk': [80]}
{'cpu': [50], 'mem': [80], 'disk': [80]}
8、函数
#!/usr/bin/env python3
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
def mail():
ret = 'success'
try:
msg = MIMEText('邮件内容','plain','utf-8')
msg['From'] = formataddr(["111",'1111@qq.com'])
msg['To'] = formataddr(["222",'2222@qq.com'])
msg['Subject'] = "主题"
server = smtplib.SMTP("smtp.qq.com",25)
server.login("1111@qq.com","输入邮箱密码")
server.sendmail('1111@qq.com',['2222@qq.com',],msg.as_string())
server.quit()
except Exception:
ret = 'fail'
return ret
ret = mail()
print(ret)
运行结果:fail,实验使用真实邮箱获得结果为success。
python学习之路 第三天的更多相关文章
- 大数据萌新的Python学习之路(三)
笔记内容: 一.集合及其运算 在之列表中我们可以存储数据,并且对数据进行各种各样的操作.但是如果我们想要对数据进行去重时是十分麻烦的,需要使用循环,要建立新的列表,还要 进行对比,十分的麻烦,还消耗 ...
- Python学习之路 (三)爬虫(二)
通用爬虫和聚焦爬虫 根据使用场景,网络爬虫可分为 通用爬虫 和 聚焦爬虫 两种. 通用爬虫 通用网络爬虫 是 捜索引擎抓取系统(Baidu.Google.Yahoo等)的重要组成部分.主要目的是将互联 ...
- python学习之路-第三天-函数
函数 函数的定义关键字:def 使用global语句可以清楚地表明变量是在外面的块定义的 示例:(函数运行完毕后x的值是2) #!/usr/bin/python # Filename: func_gl ...
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习之路【第一篇】-Python简介和基础入门
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- Python学习之路——pycharm的第一个项目
Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...
- python学习之路------你想要的都在这里了
python学习之路------你想要的都在这里了 (根据自己的学习进度后期不断更新哟!!!) 一.python基础 1.python基础--python基本知识.七大数据类型等 2.python基础 ...
随机推荐
- C#开发微信门户及应用(36)--微信卡劵管理的封装操作
前面几篇介绍了微信支付方面的内容,本篇继续微信接口的一些其他方面的内容:卡劵管理.卡劵管理是微信接口里面非常复杂的一个部分,里面的接口非常多,我花了不少时间对它进行了封装处理,重构优化等等工作,卡劵在 ...
- 模型浏览器【Model Browser】【EF基础系列6】
We have created our first Entity Data Model for School database in the previous section. The visual ...
- @Autowired注解的使用
使用Spring时,通过Spring注入的Bean一般都被定义成private,并且要有getter和setter方法,显得比较繁琐,增加了代码量,而且有时会搞忘造成错误. 可以使用@Autowire ...
- HTML5 Canvas玩转酷炫大波浪进度图
如上图所见,本文就是要实现上面那种效果. 由于最近AlloyTouch要写一个下拉刷新的酷炫loading效果.所以首选大波浪进度图. 首先要封装一下大波浪图片进度组件.基本的原理是利用Canvas绘 ...
- 集成shareSDK错误总结(新浪微博)
错误1. . 以上错误是由于没有添加-ObjC的原因,在targets->Build Setting ->Other Linker Flags中添加-ObjC 添加方法如下 错误2 授权回 ...
- 【代码笔记】iOS-自定义弹出框
代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. [s ...
- MapReduce 的架构
主从结构 主节点,只有一个 : JobTracker ,JobTracker 一般情况下,运行在 namenode 这台机器上. 从节点,有很多个 : TaskTrackers , 部署在剩下 ...
- Java中Vector和ArrayList的区别
首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList.Vector和LinkedList.List用于存放多个元素,能够维护元素的次序,并且允许元素的重复.3个具体 ...
- oracle调用JAVA类的方法
导入jar包 在oracle中导入需要的jar包,我们把编辑好的java类打成jar包,直接在oarcle里面写简单的调用就可以了, 1.操作系统需要拥有支持loadjava命令的jdk. 2.加 ...
- Scala基础语法 (一)
如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法. Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的. 我 ...