python基础04--list,cou,dict
1.1 列表list
1、列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串,列表,元组,集合,字典
2、列表是有序的, 可以索引,切片
3、List中的元素是可以改变的
4、list
len(list1) 长度
list1 + list2 多个列表链接
list1*3 列表重复
3 in list1 in判断元素是否在列表中
5、List操作:
增:
list1.append(值) 在列表最后增加值
list1.insert(下标,元素) 向指定位置插入元素
list1.extend(seq) 在列表末尾一次性追加另一个序列的多个值 seq可以是字符串,元组,集合,字典(取字典的key值)
删:
list1.pop(index) 移除元素,并返回该元素的值, 若没有传入元素,则默认为最后一个元素 列表被改变
list1.remove(元素) 移除列表中某个值的第一匹配项 列表被改变 没有返回值
list1.clear() 清空列表
del list1 删除列表
del list1[2:1] 切片去删除列表元素
改:
list1[index] = 新元素
list1[0:2] = 新元素 把对应切片元素去掉后,换成新元素最小的多个值
查:
list1[index]
for 循环
公共方法:
len(list1) 返回列表的元素个数
list1.count(元素) 返回元素在列表中的个数
list1.index() 返回元素索引,找不到报错
max(list1) 返回列表元素最大值
min(list1) 返回列表元素最小值
list(seq) 转换 seq可以是字符串,元组,集合,字典(取字典的key值)
排序:
list1.sort() 对列表正向排序 列表被改变 元素一定要相同类型
list1.sort(reverse = True) 对列表反向排序
list1.reverse() 反转列表中的元素 列表被改变
list.copy() 复制列表。浅复制。列表中有内嵌列表时,改变内部列表,copy的列表也会改变
列表的嵌套: 列表中元素的类型可以不相同,它支持数字,字符串,列表,元组,集合,字典
li= [1][1] 深层查找
1.2 元祖 couple 只读列表,可循环查询,可索引切片
1、儿子不能改,孙子可能可以改
2、tup1=()#空元组 tup2=(20,)# 一个元素,需要在元素后添加逗号
3、元组可以使用+链接多个元组
4、列表转化为字符串
s.join(可迭代对象) 用s链接可迭代对象中的每一个元素,返回字符串
例子: str = “women”
“++”.join(str) 返回 w++o++m++e++n
5、元祖操作:
del tou1 删除整个元祖
len(tou1) 返回元祖元素个数
max(tou1) 元组中最大值
min(tou1) 元组中最小值
touple(seq) 转换 seq seq可以是字符串,元组,集合,字典(取字典的key值) 不改变原来的对象
1.3 字典 dict
1、dict key 必须是不可变数据类型,
value 任意数据类型, 可以是任何python对象
dict 优点:二分查找去查询
存储大量的关系型数据
特点:3.6以上是 有序的(按照增加的顺序排列)
2、创建空字典使用 { }
3、dict操作
增:
dic1[key] = value 没有对应的键值对,添加
dic1[key] = value 有对应的键值对,修改
dic1.setdefault(key,value) 有对应的键值对,不修改,没有才添加
value未传值默认为 None
删:
dic1.pop(key) 有返回值,按key来删除。 如果key没有,默认会报错。
dic1.pop(key,”自定义”) 如果设置可以返回设置值
dic1.popitem() 删除最后一个, 返回元祖,值为删除的键值
dic1.clear() 清空字典
del dic1[key] 删除键值对, 没有会报错
改:
dic1[key] = value 有对应的键值对,修改
dic1.update(dic2) 把dic2中的key/value 覆盖添加到dic1中
(如果dic2中和dic1中有相同的 key,则用dic2覆盖dic1)
查:
dic1[key] 返回对应key的值,没有key报错
dic1.get(key) 返回对应key的值,没有key不报错 优先使用
dic1.get(key,”自定义”) 如果设置可以返回设置值
dic1.keys() 以列表返回所有的key
dic1.values() 以列表返回所有的value
dic1.items() 返回一个列表 ,列表中为 一个个(key,value) 元组
for i in dic1:print(i) 打印keys
for i in dic1.values():print(i) 打印values
for k,v in dic1.items():print(i) 打印 key value 对
key in dict 判断key是否在字典中
dic1.clear() 清空字典
len(dic1) 计算字典中key总数
dict.fromkeys(seq,value) 以seq中的元素作为key,value为对应的初始值(没有则为none) seq可以是字符串,元组,集合,字典(取字典的key值),不影响原dict
4、嵌套
dic1[key]
python基础04--list,cou,dict的更多相关文章
- Python基础数据类型-字典(dict)
Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...
- python基础===将json转换为dict的办法
首先json是字符串. 大家都知道,字符串是用来传递信息的.json字符串实际上就是一种规定了格式的字符串, 通过这种格式,我们可以在不同的编程语言之间互相传递信息,比如我们可以把javascript ...
- python基础学习 str,list,dict,set,range,enumerate
一.字符串 s = 'python' s1 = 'python' + 'learn' #相加其实就是简单拼接 s2 = 'python' * 5 #相乘其实就是复制自己多少次,再拼接在一起 字符串切片 ...
- python 基础使用list、dict、set、可变与不可变对象
参考链接:https://www.liaoxuefeng.com/wiki/1016959663602400/1017104324028448 dict是字典,可以储存键值对类型的值,set与dict ...
- 0617 python 基础04
控制流--for 循环 >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 换行输出 >>> for i in range(1 ...
- python学习笔记(二)python基础知识(list,tuple,dict,set)
1. list\tuple\dict\set d={} l=[] t=() s=set() print(type(l)) print(type(d)) print(type(t)) print(typ ...
- Python基础之 一 字典(dict)
字典:是一种key - value的数据类型.语法:info = { key:value }特性:无序,key必须唯一(所以天生去重) 方法如下:del dict[key]:删除字典指定键len(di ...
- python基础知识三 字典-dict + 菜中菜
3.7字典:dict+菜中菜 1.简介 无序,可修改,用于存储数据,大量,比列表快,将数据和数据之间关联 定义:dict1 = {'cx':10,'liwenhu':80,'zhangyu': ...
- python基础:zip和dict详解
一.zip函数:接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表. 1.示例1: x = [1, 2, 3] y = [4, 5, 6] z = [7, 8, 9] xyz = zi ...
- Python基础笔记:使用dict和set
dict 就和 C语言中的 map 的作用一样.查找非常快,以空间换时间! dict的使用: >>> d={'Mike':66,'Bob':77,'John':88} #定义一个di ...
随机推荐
- 显卡,显卡驱动,nvcc, cuda driver,cudatoolkit,cudnn到底是什么?
在使用深度学习框架的过程中一定会经常碰到这些东西,虽然anaconda有时会帮助我们自动地解决这些设置,但是有些特殊的库却还是需要我们手动配置环境,但是我对标题上的这些名词其实并不十分清楚,所以老是被 ...
- 201871010132——张潇潇《面向对象程序设计JAVA》第二周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
- 17-C#笔记-类
1. 构造函数.析构函数 修饰词的作用域仅一行. 类的默认访问标识符是 internal,成员的默认访问标识符是 private. using System; namespace LineApplic ...
- 洛谷P3835 【模板】可持久化平衡树(FHQ Treap)
题面 传送门 题解 可持久化一下就好了,具体可以看代码 这里有一个小\(trick\)就是我们原本在\(merge\)的时候也要新建节点的,但是我们\(merge\)之前一般已经\(split\)过了 ...
- vue : 无法加载文件 C:\Users\xxx\AppData\Roaming\npm\vue.ps1
最近因为电脑太卡,小颖把电脑重装了,重装后再执行 npm install -g @vue/cli 时可能是网络问题,一直不能成功,小颖就把npm指向了淘宝镜像: npm install -g cnpm ...
- first-child、last-child误解
MDN解释兄弟元素中的第一个元素 然后今天写的时候这样想出现了问题 并没有加上边框 W3C解释 尝试去掉h3,发现span加上了边框 E:first-child含义 父元素中第一个元素且第一个元素是E ...
- 一篇文章看懂mysql中varchar能存多少汉字、数字,以及varchar(100)和varchar(10)的区别
看完这篇文章,你能搞清楚以下问题: 1.varchar(100)和varchar(10)的区别在哪里? 2.varchar能存多少汉字.数字? 3.varchar的最大长度是多少呢? 4.字符.字节. ...
- node.js 路由详解
路由的基本使用 第一步:获取url跟目录下的字符 var http = require('http'); var url = require('url') http.createServer(func ...
- IDEA调试进入class文件
今天用IDEA调试时,一直进入class文件,而没有进入java文件. 错误原因 出现这种情况,有可能是Module有多个同名的依赖,调试时程序进入了同名的jar包里面,而不是同名的Module. 如 ...
- 【计算机视觉】ImageNet介绍
ImageNet介绍 ImageNet 是一个计算机视觉系统识别项目, 是目前世界上图像识别最大的数据库.是美国斯坦福的计算机科学家,模拟人类的识别系统建立的.能够从图片识别物体.ImageNet是一 ...