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基础 ...
随机推荐
- Get radio selected value
先看下面 foreach得到的radio list: 现在想实现把选择的选项值Post至服务端:
- Android的历史与花边
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 历史 现在的Android如日中天.每天150万部的Android设备被激活,全球 ...
- Eclipse(一)
Eclipse的初步学习
- springmvc+spring+mybatis+maven项目集成shiro进行用户权限控制【转】
项目结构: 1.maven项目的pom中引入shiro所需的jar包依赖关系 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...
- pagebean pagetag java 后台代码实现分页 demo 前台标签分页 后台java分页
java 后台代码实现分页 demo 实力 自己写的 标签分页 package com.cszoc.sockstore.util; import java.util.HashMap;import ja ...
- 【前端优化之渲染优化】大屏android手机动画丢帧的背后
前言 上周我与阿里的宇果有一次技术的交流,然后对天猫H5站点做了一些浅层次的分析,后面点时间基本天天都会有联系,中途聊了一些技术细节.聊了双方团队在干什么,最后聊到了前端优化.因为我本身参与了几次携程 ...
- ArcGIS中的标注和注记
在ArcMap中可以使用标注和注记来识别要素,选择标注或注记取决于你需要如何控制文本显示以及在ArcMap中如何存储文本. 1.标注只是临时显示相关数据或字段 2.标注用于长时间保存数据以及显示方式. ...
- 中国式商业智能报表ActiveReports免费公开课,10月20日开讲
ActiveReports公开课全方位报表解决方案,满足商业报表五大需求 [开课时间]10月20日[主讲老师]葡萄城报表产品经理[开课形式]网络在线公开课[活动费用]前50名免费 适合人群:报表开发人 ...
- 离开Autodesk,开启新篇章
我已经离开了Autodesk,开启新篇章.在过去7年多时间中,我先后支持Autodesk 基础设施相关产品的开发,包括MapGuide/AIMS,Map3D,Civil 3D,Infraworks等, ...
- React Native 之 组件化开发
前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...