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 ...
随机推荐
- django 自定义分页,网址存储缓存,CBV
1. 通过切片控制分页 自定义分页: from django.shortcuts import render # Create your views here. from app01.models i ...
- 浅析 fstab 与移动硬盘挂载方法
本文转自 Steins;Lab,非常详细地介绍了树莓派上 fstab 的配置项. 近期自己的Raspberry Pi出了点问题,总结总结便有了这篇文章. 本文首先记录“移动硬盘挂载”实际发生的问题,然 ...
- Graylog-Sidecar
收集linux日志-filebeat 安装sidecar 下载graylog-sidecar-1.0.2-1.x86_64.rpm rpm -ivh graylog-sidecar-1.0.2-1.x ...
- 12-C#笔记-可空类型
区别于C++,C#定义的NULL和0不同.更严格. C#的基本类型,区分为可空和不可空 主要涉及两个符号 单问号? 双问号?? 示例如下: using System; namespace Calcul ...
- 重新学习Spring注解——servlet3.0
53.servlet3.0-简介&测试 54.servlet3.0-ServletContainerInitializer 55.servlet3.0-ServletContext注册三大组件 ...
- mysql之子查询、视图、事务及pymysql等
数据准备 CREATE TABLE `emp` ( `id` int(0) NOT NULL AUTO_INCREMENT, `name` varchar(10) NOT NULL, `gender` ...
- 用纯真ip数据库.dat文件查询ip归属
网址:http://www.cz88.net/ 下载安装后,有这个文件: 安装路径/ip/qqwry.dat 创建实例的时候吧这个文件路径传入,即可调用. /** * 从纯真IP地址库查询ip归属 * ...
- Python 的AES加密与解密
AES加密方式有五种:ECB, CBC, CTR, CFB, OFB 从安全性角度推荐CBC加密方法,本文介绍了CBC,ECB两种加密方法的python实现 python 在 Windows下使用AE ...
- java插入代码块
粘贴1: 当代码写到一定程度之后,就会发现很多代码都被重复地敲了N多遍,甚至毫不夸张地说:闭着眼睛都能敲出来.大量地敲这些重复地代码,除了锻炼敲键盘的速度,基本上没有其他益处,但是长期下来会浪费很多时 ...
- jquery根据选择器进行页面赋值,封装赋值方法
可以进行文本框赋值,文本域赋值,下拉列表赋值,单选框赋值,多选框赋值, 传入对象,可以根据元素name进行比对赋值,不用每个进行单独赋值 <!DOCTYPE html> <html ...