join,列表和字典用for循环的删除,集合,深浅拷贝
1.join()
将列表转换成字符串,并且每个字符之间用另一个字符连接起来,join后面必须是可迭代的对象(字符串,列表,元组,字典,集合),数字不能迭代
例如:
s = ['a','b','c']
s1 = '_'.join(s)
print(s1)
结果为:a_b_c
2.字符串转换成列表:split()
列表转换成字符串:join()
3.列表的删除(pop,remove,del,clear)
如果用for循环删除,第二个元素的索引就变成了第一个元素的索引,此时列表内部的索引在改变
例如:
lst = ['a','b','c','d']
for i in lst:
lst.remove(i)
print(lst)
结果为:['b','d']
此时需要创建一个新的列表来记录原列表,然后for循环依次遍历新列表,删除原列表
例如:
lst = ['a','b','c','d']
lst1 = [] #存放要删除的元素
for i in lst: #循环新列表
lst1.append(i) #将原列表的元素添加到新列表中
for i in lst1: #循环新列表
lst.remove(i) #删除原列表中的元素
print(lst)
print(lst1)
此时结果为:[]
['a','b','c','d']
4.字典的删除:
和列表一样,都是先创建一个新的字典,然后循环原字典,将每个元素添加到新字典中,循环新字典,删除原字典
例如:
dic = {'a':1,'b':2,'c':3,'d':4}
dic1 = {}
for i in dic:
dic1.setdefault(i)
for j in dic1:
dic.pop(j) #字典只能通过key来删除,而不能用索引删除
print(dic)
结果为:{}
所以,列表和字典在循环的时候不能删除,字典在循环的时候不能改变大小
fromkeys():用来创建一个新的字典,和原来的字典没关系,使用dict访问fromkeys()
dic = dict.fromkeys('def',[4,5,6])
print(dic)
结果为:{'d':[4,5,6]'e':[4,5,6],'f':[4,5,6]}
5.set集合:
创建: s = set()
集合本身是可变的数据类型,不可哈希,有增删改查操作
集合中的元素是不可变的,不重复,可哈西,可以去重
将列表去重:
s = []
s1 = set(s) #把列表转换成集合,进行去重复
s2 = list(s1)#把集合转换成列表
6.深浅拷贝
import copy()
浅拷贝:lst = []
lst1 = lst[:]
lst1 = lst.copy()
不管改变lst还是lst1,另一个也会改变(共用同一个内存地址)
深拷贝:
lst = []
lst1 = copy.deepcopy(lst) #创建了一个新的内存
不管改变lst还是lst1,另一个都不会改变
join,列表和字典用for循环的删除,集合,深浅拷贝的更多相关文章
- python--深浅拷贝 join() 列表和字典的删除 fromkeys建立字典
北京的冬天雾霾依旧很重,依稀记得人生初见雾霾时的样子,那时的回忆也是有些尴尬,不过雾霾也伴随了我的成长,成为了我肺泡中不可分割的一部分. 今天我想写的是拷贝的问题,不过在这之前我想先补充一点关于字符串 ...
- Python入门(二)列表、字典、字符串、元组、集合
列表list什么是列表:Python内置的一种数据类型是列表,list是一种有序的集合,可以随时添加和删除其中的元素 创建List列表的方法 L = ['杨俊辰',‘啦啦啦’,'Tom'] empty ...
- Python学习---列表/元组/字典/字符串/set集合/深浅拷贝1207【all】
1.列表 2.元组 3.字典 4.字符串 5.set集合 6.深浅拷贝
- fromkeys语法/set集合/深浅拷贝/列表/字典的删除
fromkeys语法: dic = {"apple":"苹果", "banana":"香蕉"} 返回新字典. 和原来的没 ...
- str中的join方法; set集合;深浅拷贝
一.str中的join方法 1,用join可以吧列表转换为字符串 将列表转换成字符串. 每个元素之间用_拼接 s = "_". join(['德玛', ''赵信'', '易']) ...
- str中的join方法,fromkeys(),set集合,深浅拷贝(重点)
一丶对之前的知识点进行补充 1.str中的join方法.把列表转换成字符串 # 将列表转换成字符串,每个元素之间用_拼接 s = "_".join(["天",& ...
- day07 python列表 集合 深浅拷贝
day07 python 一.知识点补充 1."".join() s = "".join(('1','2','3','4','5')) #将字符串 ...
- python 列表,字典,元组,字符串,常用函数
飞机票 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中包含3个元组),相当于ls和object ...
- python随笔 join 字典,列表的清空 set集合 以及深浅拷贝(重点..难点)
一,字符串和列表的转换 1.str中的 join 方法: 把列表转换成字符串 # 将列表转换成字符串. 每个元素之间用_连接 s = '**'.join(['李启政',' 郑强' , '孙福来']) ...
随机推荐
- C++的 RTTI 观念和用途(非常详细)
自从1993年Bjarne Stroustrup [注1 ]提出有关C++ 的RTTI功能之建议﹐以及C++的异常处理(exception handling)需要RTTI:最近新推出的C++ 或多或少 ...
- 使用豆瓣的pip源安装python模块
1.指定豆瓣pip源安装Django pip install -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com ...
- 解决wireshark打开错误
错误提示如下: Lua: Error during loading: [string "/usr/share/wireshark/init.lua"]:44: dofile has ...
- 【工具】java发送GET、POST请求
前项目使用这种HTTP的方式进行数据交互,目前已更换数据交互方式,但是作为接口提供调用来说还是比较简洁高效的: 总体流程就是: 1.发送HTTP请求 2.获取返回的JSON对象 3.JSON转换 pa ...
- CSS3 入门级
从刚开始学习的选择器总共有十三种: id class 标签 子代 后代 交集 并集 通配符 伪类 结构 属性 相邻 兄弟 (全当复习,如果有用的话那就正好) div[name=zhang] 这是属性 ...
- 使用docker启动mysql
安装docker 查询mysql版本, docker search mysql 拉取指定版本的镜像 docker pull NAME 启动镜像, 第一次启动最少需要指定MYSQL_ROOT_PASSW ...
- Python开发【第九篇】: 并发编程
内容概要 操作系统介绍 进程 线程 协程 二. 进程 python并发编程之多进程理论部分 在python程序中的进程操作 运行中的程序就是一个进程.所有的进程都是通过它的父进程来创建的.因此,运行起 ...
- putty秘钥转换成xhell支持的格式
使用XShell导入KEY的时候报“Failed to import the user key!”错误 这个错误表明导入的private key文件不是XShell所支持的,有三种可能: 将Publi ...
- Linux文件系统目录结构详解
在我们初学嵌入式Linux时,首先学习的就是Linux的最小根文件系统:下面我将为初学者们详细的阐述一下Linux的最小根文件系统. 根目录在Linux中即为“/”,要进入根目录,命令“cd /”即 ...
- iOS组件化开发一远端私有库建立(二)
公共库业务,基础层划分! 一.构建私有云,本文推荐为码云 1.构建名称为LuckTimeSpec,选择私有建立: 2.Copy地址的https 链接: 二.打开终端 输入: cd /Users/zha ...