一.集合  set

  集合是无序的,天然能去重,是可变的.例:s = {1,2,3,4,5}  

 s = {}
s1 = {1}
print(type(s)) # 空{}就是字典
print(type(s1)) #集合

  集合的基本操作:

  1.增

     s = {1,2,3,'22',,'ss',(3,4)}

    s.add('元素')

    s.update('alex')      #迭代添加  'alex'会被分割添加

  2.删

    s = {1,2,3,'22',,'ss',(3,4)}

    s.remove()    #通过元素指定删除 

      s.pop()                 #随机删除,有返回值,返回的是删除的元素

      s.clear()               #清空set

      del  s                    #删除整个集合

  3.改

    先删后增就是改.    

 s = {1,2,3,'','ss',(3,4)}
s.remove(3)
s.add(7)
print(s)

  4.查

    通过for循环实现

  5.其他操作:

    1.通过set去重

lst = [1,2,3,42,3,45,67,534,2]
print(list(set(lst)))

    2.

 s = {'黑哥'}
s1 = {'虎哥','开哥','alex哥','黑哥','wu哥'}
print(s & s1) # 交集 俩个集合都有的才输出
print(s | s1) # 并集 两个集合 合并到一起
print(s1 - s) # 差集 前面减后边的集合前边集合中有的输出出来
print(s ^ s1) # 反交集 相当于并集-交集
print(s < s1) # 子集
print(s1 > s) # 超(父)集

    3.冻结集合 frozenset()

 a = frozenset((1,2,3))
dic ={a:1}
print(dic)

二.二次编码

ascii        不支持中文

unicode   万国码 中文4个字节 英文 2个

    utf-8    最少使用1个字节 欧洲 2 亚洲 3
    gbk      中文 2 英 1
    windows   默认编码GBK

 a = '你好黑'
a2 = a.encode('utf-8') #编码
print(a)
print(a2)
a3 = a2.decode('utf-8') #解码
print(a3)

    ###bytes字节用于传输和存储

   注意:用什么编就用什么写!

三.基础数据类型补充

  1.通过for循环删除列表中所有元素

 lst = [1,2,3,4,5]
for i in range(len(lst)):
lst.pop()
print(lst)

    还可通过新建列表删除

 lst = [1,2,3,4,5]
lst1 = [] for i in lst:
lst1.append(i)
for k in lst1:
lst.remove(k)
print(lst)

     字典在循环过程中不能进行增加和删除,字典也可通过新建字典的方法删除

 lst = {}
dic ={'a':1,'b':2}
for i in dic:
lst[i]= dic[i]
for i in lst:
dic.pop(i)
print(dic)

  2.字典的fromkeys()方法

 dic = dict.fromkeys(['alex','wusir','wenzhou','nvshen','kaige'],['太白','姗姗'])
fromkeys #第一是键 第二是值
print(dic)

四.深浅拷贝

  浅拷贝:只拷贝第一层元素

  深拷贝:拷贝所有元素,开辟新的空间储存,两者没有任何关系

浅拷贝

 lst = [1,2,3,[4,5,6],7]
lst1 = lst #赋值
lst2 = lst[:] # 切片
lst.append(7)
print(lst)
print(lst2)

深拷贝

 import copy
lst4 = copy.deepcopy(lst) # 深拷贝
lst[-2].append(7)
print(lst) #[1, 2, 3, [4, 5, 6,7], 7]
print(lst4) #[1, 2, 3, [4, 5, 6], 7]

    

    

python集合以及编码初识的更多相关文章

  1. 《Python》 while循环、运算符和编码初识

    一.while 循环 while也叫无限循环 while 条件: 循环体 判断条件: 条件为真,进入循环体,循环体执行到底部,返回,继续判断条件. 终止循环: 1.改变条件(标志位的概念) 2.bre ...

  2. python基础入门while循环 格式化 编码初识

    一.while循环 1.格式 while+空格+条件+英文冒号: ​ 缩进+结果(循环体) ​ #若条件为真则一直执行,条件为假则不执行 while True: print('痒') print('. ...

  3. python 基础(while 循环、格式化输出、运算符、编码初识)

    while循环 break 终止当前循环 count = 1 while count < 3: print(count) count += 1 break # while循环中一旦代码执行到br ...

  4. while循环、格式化输出、运算符和编码初识

    while循环 1. while循环的结构 while 条件: 执行语句1 执行语句2 i = 0 while i < 10: print(i) i += 1 运行结果 0 1 2 3 4 5 ...

  5. Python 的字符编码

    配置: Python 2.7 + Sublime Text 2 + OS X 10.10 本文意在理清各种编码的关系并以此解决 Python 中的编码问题. 1 编码基本概念 只有先了解字符表.编码字 ...

  6. Python运算符和编码

    Python运算符和编码 一.格式化输出 现在有以下需求,让⽤户输入name, age, job,hobby 然后输出如下所⽰: ----------info of dogfa---------- n ...

  7. Python 入门之编码

    Python 入门之编码 1.编码初识: (1)ASCII码 :256 个 英文1个字节,不支持中文 (2)GBK(国标) : 英文1个字节 中文两个字节 (3)unicode (万国码):英文4个字 ...

  8. Python 简明教程 --- 13,Python 集合

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果代码和注释不一致,那很可能两者都错了. -- Norm Schryer 目录 前几节我们已经介绍 ...

  9. python基础之编码问题

    python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...

随机推荐

  1. Python中logging在多进程环境下打印日志

    因为涉及到进程间互斥与通信问题,因此默认情况下Python中的logging无法在多进程环境下打印日志.但是查询了官方文档可以发现,推荐了一种利用logging.SocketHandler的方案来实现 ...

  2. 《ucore lab1 exercise3》实验报告

    资源 ucore在线实验指导书 我的ucore实验代码 题目:分析bootloader进入保护模式的过程 BIOS将通过读取硬盘主引导扇区到内存,并转跳到对应内存中的位置执行bootloader.请分 ...

  3. 记crt 在windows与linux服务器之间利用ftp进行文件的上传下载

    我们首先来熟悉一些相关的命令以及操作: ls      #展示linux服务器当前工作目录[你连接sftp时所处的目录]下的所有文件以及文件夹 lcd  F:\niki      #绑定你在windo ...

  4. 平衡树B树B+树红黑树

    二叉树与二叉查找树的操作是必须要熟练掌握的,接下来说的这些树实现起来很困难,所以我们重点去了解他们的特点. 一.平衡二叉查找树与红黑树 平衡树AVL:追求绝对的高度平衡,它具有稳定的logn的高度,因 ...

  5. 关于 磁盘 I/O 的工作机制那些事

    总有一些你我看不见的东西,存在与你我周围 <深入分析 javaW 技术内幕> 读书感悟 作者 :淮左白衣 写于2018年4月11日19:35:06 写在前面的话 字节与字符的转换桥梁 用户 ...

  6. python学习-14 基本数据类型3

    1.字符串 获取字符串的字符,例如: test = 'abcd' a= test[0] # 通过索引,下标,获取字符串中的某一个字符 print(a) b = test[0:1] # 通过下标的 范围 ...

  7. Spring (3)框架

    Spring第三天笔记 今日内容 Spring的核心之一 -  AOP思想 (1) 代理模式- 动态代理 ① JDK的动态代理 (Java官方) ② CGLIB 第三方代理 (2) AOP思想在Spr ...

  8. Http 与 Https区别

    传统Http协议弊端 传统Http协议弊端是明文的,如果别人采用抓包分析可以获取到明文数据. 什么是Https协议 HTTPS(Hyper Text Transfer Protocol over Se ...

  9. 【SQL Server学习笔记】Delete 语句、Output 子句、Merge语句

    原文:[SQL Server学习笔记]Delete 语句.Output 子句.Merge语句 DELETE语句 --建表 select * into distribution from sys.obj ...

  10. 数据仓库之抽取数据:openrowset函数带bulk操作符的用法

    原文:数据仓库之抽取数据:openrowset函数带bulk操作符的用法 在做数据仓库时,最重要的就是ETL的开发,而在ETL开发中的第一步,就是要从原OLTP系统中抽取数据到过渡区中,再对这个过渡区 ...