Python开发——3.基本数据类型之列表、元组和字典
一、列表(list)
1.列表的格式
li = [11,22,"kobe",["lakers","ball",11],(11,22,),{"k1":11,"k2":"kuzma"},True,False]
2.列表可以嵌套任何格式,数字、字符串、列表、元组、字典、布尔值。
3.索引取值
li = [11,22,"kobe",["lakers","ball",11],(11,22,),{"k1":11,"k2":"kuzma"},True,False]
print(li[1])
4.切片取值
li = [11,22,"kobe",["lakers","ball",11],(11,22,),{"k1":11,"k2":"kuzma"},True,False]
print(li[1:-1])
5.for循环
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
for item in li:
print(item)
6.利用索引修改和删除
a.修改
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
li[2] = "randle"
print(li)
b.删除
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
del li[1]
print(li)
7.利用切片修改和删除
a.修改
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
li[0:2] = [33,44]
print(li)
b.删除
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
del li[0:4]
print(li)
8.in 操作
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
v ="ball" in li
print(v)
9.查找
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
v = li[3][2]
print(v)
10.转换
(1)字符串转列表
s = "hechouzi"
li = list(s)
print(li)
(2)列表转字符串
a.列表中有数字,要用for循环
li = [11, 22, "kobe", ["lakers", "ball", 11], (11, 22,), {"k1": 11, "k2": "kuzma"}, True, False]
s = ""
for item in li:
s = s + str(item)
print(type(s),s)
b.列表中只有字符串
li = ["","hahah"]
v = "".join(li)
print(v)
11.方法
(1)append 原来值最后追加
li = [11, False, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
li.append(22)
print(li
(2)clear 清空列表
li = [11, False, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
li.clear()
print(li)
(3)copy (浅拷贝)
li = [11, False, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
v = li.copy()
print(v)
(4)count 计算元素出现的次数
li = [11, False,0, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
v = li.count(False)
print(v)
(5)extend 扩展原列表,参数:可迭代对象
li = [11, False,0, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
li.extend([(11,22),""])
print(li)
(6)index 根据值获取当前值的索引位置(左边优先)
li = [11, False,0, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
v = li.index(False)
print(v)
(7)insert 在指定索引位置插入元素
li = [11, False,0, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
li.insert(2,"randle")
print(li)
(8)pop(1:指定索引;2:默认删除最后一个) 删除某个值,并获取删除的值
li = [11, False,0, "kobe", ["lakers"], (11, 22,), {"k1": 11, "k2": "kuzma"}]
v = li.pop()
print(li,v)
(9)remove 删除列表中指定的值,左边优先
li = [11,22,33,33,44]
li.remove(33)
print(li)
(10)reverse 将列表进行翻转
li = [11,22,33,33,44]
li.reverse()
print(li)
(11)sort 排序
li = [11,22,33,33,44]
li.sort(reverse = True)
print(li)
二、元组(tuple)
1.元组的写法,一般在最后加,
tu = (11,"hehcouzi",)
2.元组的一级元素不可被修改,不能增加或删除
3.索引取值
tu = (11,"kobe",[22],{"key1":"ball"},)
v = tu [1]
print(v)
4.切片取值
tu = (11,"kobe",[22],{"key1":"ball"},)
v = tu [1:-1]
print(v)
5.for 循环
tu = (11, "kobe", [22], {"key1": "ball"},)
for item in tu:
print(item)
6.转换
s = "hehcouzi"
v1 = tuple(s)
v2 = list(v1)
print(v1,v2
三、字典(dict)
1.字典的基本结构
info = {“k1”:"v1","k2":"v2"}.key:value
2.字典的value可以是任何值
3.字典和列表不可做key值
4.字典是无序的
5.可以通过索引取值,不能切片
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
v = info["k1"]
print(v)
6.del删除
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
del info["k1"]
print(info)
7. for 循环,默认输出key值
a. info.items
输出key和value
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
for item in info.items():
print(item)
b. info.values
输出value值
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
for item in info.values():
print(item)
8.方法
(1)fromkeys
根据序列,创建字典,并赋予统一的值
v = dict.fromkeys(["k1","k2","k3"],"hahah")
print(v)
(2)get
a.寻找指定key值的value,找不到报错
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
v =info["k1"]
print(v)
b.寻找指定key值的value,找不到返回指定值,默认为None
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
v =info.get("k111",11111)
print(v)
(3) pop 删除并获取值
a.删除k1,并返回指定值
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
v =info.pop("k1",11111)
print(info,v)
b.随机删除一个key和它对应的value
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
k,v =info.popitem()
print(k,v,info)
(4)setdefault 设置值,已存在不设置并获取当前的value,不存在则设置并获取value
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
v = info.setdefault("k1",123)
print(info,v)
(5) update 更新
两种方法
info = {"k1":11,"k2":"hechouzi","k3":("lakers"),1:22,True:11,}
# info.update({"k1":123,"k2":"hahaha"})
info.update(k1 = "lakers",k3=111,Ture=111)
print(info)
四、类的分类
1.根据是否可变分为
可变类型:列表、字典
不可变类型:字符串、数字、元组
2.根据访问顺序分为
直接访问:数字
顺序访问:字符串、列表、元组
映射访问:字典
3.存放元素个数
容器类型:列表、元组、字典
原子类型:数字、字符串
Python开发——3.基本数据类型之列表、元组和字典的更多相关文章
- python中的基本数据类型之列表,元组
一.列表 1.什么是列表. 列表是python的基本数据类型之一,用[]来表示,可以存放各种数据类型(什么都能装,能装对象的对象) 列表相比于字符串,不仅可以存放不同类型的数据,而且可以存放大量的数据 ...
- Python之路-基础数据类型之列表 元组
列表的定义 列表是Python基础数据类型之一,它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型: lst = [1,2,'你好','num'] 列表的索引和切片 与字符串类似, ...
- Python开发(二):列表、字典、元组与文件处理
Python开发(二):列表.字典.元组与文件处理 一:列表二:元组三:字典四:文件处理 一:列表 为什么需要列表 可以通过列表可以对数据实现最方便的存储.修改等操作.字符串是不能修改的,所以无法 ...
- Python—列表元组和字典
Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...
- python基础数据类型之列表,元组操作
一.列表的索引和切片1.列表的索引列表和字符串一样样拥有索引 lst = ["a","b","c"] print(lst[0]) # 获取第 ...
- 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作
声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/ 模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...
- Python中的基本数据类型之列表与元组初步了解
一.什么是列表 1.列表是Python中的基本数据类型之一用[]来表示,每一项元素由逗号隔开,列表什么都能装,(能装对象的对象) 2.可以用来存放大量数据 3.是一个可以改变的数据类型 二.列表的索引 ...
- python基础知识-04-字符串列表元组
python其他知识目录 内存,cpu,硬盘,解释器 实时翻译 编译器 :一次性翻译python2,3 除法,2不能得小数,3能得小数 1.字符串操作 1.1字符串操作startswith start ...
- python学习笔记-(四)列表&元组
1.列表及元组操作 1.1 列表 Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 定义列表: >>> namelist = ...
随机推荐
- superrvisor application config ini
1. zookeeper [program:zookeeper] environment = JAVA_HOME="/opt/jdk1.8.0_191" process_name= ...
- QQ第三方登录(完结篇)
书接上回,上回说到:这篇是代码篇 首先我们先来看一下我的母鹿(目录)吧 Connect2.1 是我们从下载的SDK,内容包含 其他文件在配置之后全部删除了! index.html 是我们点击登陆的页 ...
- 网页导出PDF文件
转自-----出道诗人 var downPdf = document.getElementById("exportToPdf"); downPdf.onclick = functi ...
- Python模拟登陆TAPD
因为在wiki中未找到需要的数据,查询也很迷,打算用python登录tapd抓取所需项目下的wiki数据,方便查找. 2018-9-30 19:12:44 几步走 模拟登录tapd 抓取wiki页左侧 ...
- Java 身份证号码验证
身份证号码验证 1.号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码 2.地址码(前 ...
- django之signal机制再探
djangobb中的signal post_save信号调用send函数时,为什么它会对与topic.post相关的其他models进行修改?同一个信号,例如post_save(保存过后的处理),是所 ...
- 【Noip模拟 20160929】选数
题目描述 现在有一排共N个数,你需要从中选出恰好K个.选出K个数后,计算它们两两差值的绝对值的最小值S.你需要确定选出哪K个,才能最大化这个S. 输入数据 输入第一行两个正整数N.K,含义如上. 输入 ...
- HTTP 中 GET 与 POST 的区别
最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. GET和POST是什么?HTTP协议中的两种发送请求的方法. HTTP是什么?HTTP是基于TCP/IP的关 ...
- 私活利器,docker快速部署node.js应用
http://cnodejs.org/topic/53f494d9bbdaa79d519c9a4a 最近研究了几天docker的快速部署,感觉很有新意,非常轻量级和方便,打算在公司推广一下,解放运维, ...
- Node.js 初识1
测试:让Node.js运行脚本 1.创建一个脚本 js1.js console.log('测试'); 2.cmd界面 运行脚本