一、列表(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.基本数据类型之列表、元组和字典的更多相关文章

  1. python中的基本数据类型之列表,元组

    一.列表 1.什么是列表. 列表是python的基本数据类型之一,用[]来表示,可以存放各种数据类型(什么都能装,能装对象的对象) 列表相比于字符串,不仅可以存放不同类型的数据,而且可以存放大量的数据 ...

  2. Python之路-基础数据类型之列表 元组

    列表的定义 列表是Python基础数据类型之一,它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型: lst = [1,2,'你好','num'] 列表的索引和切片 与字符串类似, ...

  3. Python开发(二):列表、字典、元组与文件处理

    Python开发(二):列表.字典.元组与文件处理 一:列表二:元组三:字典四:文件处理 一:列表   为什么需要列表 可以通过列表可以对数据实现最方便的存储.修改等操作.字符串是不能修改的,所以无法 ...

  4. Python—列表元组和字典

    Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...

  5. python基础数据类型之列表,元组操作

    一.列表的索引和切片1.列表的索引列表和字符串一样样拥有索引 lst = ["a","b","c"] print(lst[0]) # 获取第 ...

  6. 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...

  7. Python中的基本数据类型之列表与元组初步了解

    一.什么是列表 1.列表是Python中的基本数据类型之一用[]来表示,每一项元素由逗号隔开,列表什么都能装,(能装对象的对象) 2.可以用来存放大量数据 3.是一个可以改变的数据类型 二.列表的索引 ...

  8. python基础知识-04-字符串列表元组

    python其他知识目录 内存,cpu,硬盘,解释器 实时翻译 编译器 :一次性翻译python2,3 除法,2不能得小数,3能得小数 1.字符串操作 1.1字符串操作startswith start ...

  9. python学习笔记-(四)列表&元组

    1.列表及元组操作 1.1 列表 Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 定义列表: >>> namelist = ...

随机推荐

  1. superrvisor application config ini

    1. zookeeper [program:zookeeper] environment = JAVA_HOME="/opt/jdk1.8.0_191" process_name= ...

  2. QQ第三方登录(完结篇)

    书接上回,上回说到:这篇是代码篇 首先我们先来看一下我的母鹿(目录)吧 Connect2.1  是我们从下载的SDK,内容包含 其他文件在配置之后全部删除了! index.html 是我们点击登陆的页 ...

  3. 网页导出PDF文件

    转自-----出道诗人 var downPdf = document.getElementById("exportToPdf"); downPdf.onclick = functi ...

  4. Python模拟登陆TAPD

    因为在wiki中未找到需要的数据,查询也很迷,打算用python登录tapd抓取所需项目下的wiki数据,方便查找. 2018-9-30 19:12:44 几步走 模拟登录tapd 抓取wiki页左侧 ...

  5. Java 身份证号码验证

    身份证号码验证 1.号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码 2.地址码(前 ...

  6. django之signal机制再探

    djangobb中的signal post_save信号调用send函数时,为什么它会对与topic.post相关的其他models进行修改?同一个信号,例如post_save(保存过后的处理),是所 ...

  7. 【Noip模拟 20160929】选数

    题目描述 现在有一排共N个数,你需要从中选出恰好K个.选出K个数后,计算它们两两差值的绝对值的最小值S.你需要确定选出哪K个,才能最大化这个S. 输入数据 输入第一行两个正整数N.K,含义如上. 输入 ...

  8. HTTP 中 GET 与 POST 的区别

    最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. GET和POST是什么?HTTP协议中的两种发送请求的方法. HTTP是什么?HTTP是基于TCP/IP的关 ...

  9. 私活利器,docker快速部署node.js应用

    http://cnodejs.org/topic/53f494d9bbdaa79d519c9a4a 最近研究了几天docker的快速部署,感觉很有新意,非常轻量级和方便,打算在公司推广一下,解放运维, ...

  10. Node.js 初识1

    测试:让Node.js运行脚本 1.创建一个脚本 js1.js console.log('测试'); 2.cmd界面 运行脚本