对于列表,元组,集合的异同,有如下解释

#list ----> 允许重复的集合,修改
# tuple ----> 允许重复的集合,不修改
# set ----> 不允许重复的集合
下面是示例代码:
 s1 = set()
s2 = {1,2,3,4}
s3 = set([11,22,33,44])
s4 = {3,4,5,6,89}
print type(s2) #<type 'set'>
s1.add(44)
print s1 #set([44])
s1.clear()
print s1 #set([])
print s2.difference(s4) #set([1, 2]) (s1中存在,s2中不存在的) print s2 #set([1, 2, 3, 4])
diff = s2.difference_update(s4)
print s2 # s1中存在,s2中不存在的,更新s1, set([1, 2])
print diff s3.discard(44)
print s3
s3.discard(55) #要移除的元素不存在时,不报错
print s3
s3.remove(66) #要移除的元素不存在时,报错 s5 = {77,88,99}
s6 = {88,77}
ret1 = s5.intersection(s6)
print ret1 #取交集 set([77]) s5.intersection_update(s6)
print s5 #取交集,更新s5
ret2 = s5.isdisjoint(s6)
print ret2 #有交集是false ret3 = s5.issubset(s6)
print ret3 #判断s5是否为s6的子序列 ret4 = s5.issuperset(s6)
print ret4 #判断s5是否为s6的父序列 ret5 = s6.pop()
print ret5 #
print s6 #set([77]) ret6 = s2.symmetric_difference(s4)
print ret6 #set([1, 2, 5, 6]) s2中存在的,s4不存在,+ s4存在,s2不存在 ret7 = s2.union(s4)
print ret7 #set([1, 2, 3, 4, 5, 6])取并集 s2.update(s4)
print s2 #set([1, 2, 3, 4, 5, 6, 89])并在一起

三元运算的形式:name = 值1 if 条件 else 值2

下面是普通的运算:

 if 1 == 1 :
name = "alex"
else:
name = "eric"
5 print name

下面是三元运算:

 name = "alex" if 1 == 1 else "eric"
print name

拷贝:字符串数字,拷贝,赋值,地址深浅拷贝无意义,因为字符串的优化机制,ID都是一样的


 import copy
n1 = 123
print id(n1)
n2 = n1
print id(n2)
n3 = copy.copy(n1)
print id(n3)
深拷贝全部拷贝,除了最内一层,浅拷贝只拷贝了最外面一层,所以K1的ID是一样的。
 n4 = {"k1":"wu","k2":123,"k3":["alex",456]}
n5 = copy.copy(n4)
print "n4 id:" + str(id(n4))
print "n5 id:" + str(id(n5)) print id(n4['k1'])
print id(n5['k1'])
#
#
 
 

Python笔记-集合,拷贝的更多相关文章

  1. python笔记集合

    1.win_64下编译pyd(编译器用的tdm-gcc-5.1) gcc test.c -shared -Ic:\Python27\include -Lc:\Python27\libs -lpytho ...

  2. python笔记之常用模块用法分析

    python笔记之常用模块用法分析 内置模块(不用import就可以直接使用) 常用内置函数 help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像 ...

  3. guxh的python笔记一:数据类型

    1,基本概念 1.1,数据类型 基本数据类型:字符串,数字,布尔等 引用数据类型:相对不可变(元组),可变(列表,字典,集合等) 基本数据类型存放实际值,引用数据类型存放对象的地址(即引用) ==:判 ...

  4. s21day07 python笔记

    s21day07 python笔记 一.昨日内容回顾及补充 回顾 补充 将前面所提到的功能,统一改称为方法 二.深浅拷贝 基本格式 v1 = [1,2,3] import copy v2 = copy ...

  5. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  6. s21day13 python笔记

    s21day13 python笔记 一.装饰器 目的:在不改变原函数内部代码的基础上,在函数执行之前和之后自动执行某个功能 应用场景:想要为函数扩展功能时,可以选择用装饰器 装饰器基本格式: def ...

  7. s21day06 python笔记

    s21day06 python笔记 一.昨日内容回顾及补充 回顾 补充 列表独有功能 reverse:反转 v = [1,2,3,4,5] v.reverse() #[5,4,3,2,1] sort: ...

  8. python笔记-1(import导入、time/datetime/random/os/sys模块)

    python笔记-6(import导入.time/datetime/random/os/sys模块)   一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其 ...

  9. Python:笔记(2)——函数与模块

    Python:笔记(2)——函数与模块 Python函数 关于函数 1.我们可以使用Help来查看函数的帮助信息 2.调用函数的时候,如果传入的参数数量或者类型不符合均会报错. 3.函数名其实就是一个 ...

随机推荐

  1. SVN分支和映射总结和数据库初步使用

    SVN使用总结 常用的诸如检出,update,add就不说了. 1.创建分支-----新建分支目录,在分支文件夹下导入项目folder文件夹.分支不会影响主干trunk的代码,可以随意修改. 2.sv ...

  2. 利用Object.prototype.toString方法,实现比typeof更准确的type校验

    Object.prototype.toString方法返回对象的类型字符串,因此可以用来判断一个值的类型. 调用方法: Object.prototype.toString.call(value) 不同 ...

  3. eclipse +maven+ssm搭建矿建

    记录一下搭建框架的过程1.下载最新的eclipse   https://www.eclipse.org/downloads/download.php?file=/oomph/epp/neon/R/ec ...

  4. 解决首次访问jenkins,输入默认密码之后,一直卡住问题

    简介   安装系统:centos6.5 安装方式:在官网中下载jenkins.war,放到tomcat根目录下的webapps中,启动tomcat(还有一种yum在线安装的方式) 1.首次访问,出现如 ...

  5. 关于启用 HTTPS 的一些经验分享(一)

    转载: 关于启用 HTTPS 的一些经验分享(一) 随着国内网络环境的持续恶化,各种篡改和劫持层出不穷,越来越多的网站选择了全站 HTTPS.就在今天,免费提供证书服务的 Let's Encrypt ...

  6. T-SQL、JET SQL、PL-SQL

    数据库分为网状.层状.关系.对象四种类型,目前的数据库一般都是属于关系数据库(包括MYSQL和SQL SERVER),网状.层状基本上已成历史,对象类型尚未普及. SQL 语言是有 ANSI 标准的. ...

  7. 本周psp(11月17-23)

    本周psp进度 11月19号 内容 开始时间 结束时间 打断时间 净时间 发布读书笔记 11:05 11:25 0 20m 看构建之法书 9:50 10:48 5m 53m 11月20号 内容 开始时 ...

  8. vs2015打包winform程序遇到的一系列问题

    1.因为打包的时候用的是release版本的东西,所以就先把项目按release编译一下,然后一大波bug,后来修改了生成目标平台为x86,我的解决方案里面加上安装部署项目共5个(ui配置:活动rel ...

  9. vue-todolist

    look:先看效果: 在浏览器的地址输入localhost:8080时,页面展示的是coding和walking两个无序序列,接着在输入框输入任何字符再敲enter回车键时,列表中又增加了一列,但是只 ...

  10. [原创]C#引用C++编译的dll

    一.DllImportAttribute 1.属性介绍 using System; using System.Reflection; using System.Security; namespace ...