day12—列表、元组、字典基本语法
一、list类中提供的方法
**********************灰魔法**************************
1. 原来值最后追加 append()
li = [11, 22, 33, 22, 44]
li.append(5)
li.append("alex")
li.append([1234,2323])
print(li) # [11, 22, 33, 22, 44, 5, 'alex', [1234, 2323]]
2. 清空列表 clear()
li = [11, 22, 33, 22, 44]
li.clear()
print(li) # []
3. 计算元素出现的次数 count()
li = [1,2,2,3,42,3,2]
v = li.count(2)
print(v) #
4. 扩展原列表,参数:可迭代对象 append(), extend()
li = [11, 22, 33, 22, 44]
li.append([9898,"不得了"])
print(li) # [11, 22, 33, 22, 44, [9898, '不得了']]
li = [11, 22, 33, 22, 44]
li.extend([9898,"不得了"])
print(li) # [11, 22, 33, 22, 44, 9898, '不得了']
5. 根据值获取当前值索引位置(左边优先)index()
li = [11, 22, 33, 22, 44]
v= li.index(22)
print(v) #
6. 在指定索引位置插入元素 insert()
li = [11, 22, 33, 22, 44]
li.insert(0,99)
print(li) # [99, 11, 22, 33, 22, 44]
7. 删除某个值(1.指定索引;2. 默认最后一个),并获取删除的值 pop()
li = [11, 22, 33, 22, 44]
# v = li.pop()
# print(li) # [11, 22, 33, 22]
v = li.pop(2)
print(li) #[11, 22, 22, 44]
8. 删除列表中的指定值,左边优先 remove()
li = [11, 22, 33, 22, 44]
li.remove(22)
print(li) # [11, 33, 22, 44]
9. 将当前列表进行翻转 reverse()
li = [11, 22, 33, 22, 44]
li.reverse()
print(li) # [44, 22, 33, 22, 11]
10. 列表的排序(默认为 False) sort()
li = [11, 44, 22, 33, 22]
li.sort()
li.sort(reverse=True)
print(li) # [44, 33, 22, 22, 11]
*************************深灰魔法**************************
1. 索引取值
print( li [3] )
2. 切片,切片结果也是列表
print( li [3 : -1])
3. for循环
for item in li:
print(item)
4. 列表元素修改
li = [11, 44, 22, 33, 22]
li[1] = 120
print(li) # [11, 120, 22, 33, 22]
li[1] = [11,22,33,44]
print(li) # [11, [11, 22, 33, 44], 22, 33, 22]
5. 删除 del()
li = [11, 44, 22, 33, 22]
del li[1]
print(li) # [11,22,33,22]
6. 切片
li = [11, 44, 22, 33, 22]
li[1:3] = [120,90]
print(li) # [11, 120, 90, 33, 22]
del li[2:4]
print(li) # [11, 120, 22]
7. in 操作
li = [1, 12, 9, "age", ["石振文", ["", 10], "庞麦郎"], "alex", True]
v1 = "石振文" in li
print(v1) # False
v2 = "age" in li
print(v2) # True
8. 操作
li = [1, 12, 9, "age", ["石振文", ["", 10], "庞麦郎"], "alex", True]
print(li[4][1][0]) #
print(li[4][1]) # ['19', 10]
9. 字符串转换为列表
a = 123
a = str(a)
new_a = list(a) # 字符串可以转换为列表,数值不可以
print(new_a) # ['1', '2', '3']
10. 列表转换为字符串
li = [11,22,33,"","alex"]
s = ""
for i in li:
s = s + str(i)
print(s) # 112233123alex
或者用 join 的方法
li = ["","alex"]
v = "".join(li)
print(v) # 123alex
11. 字符串修改
v = "alex"
v = v.replace('l','el')
print(v) # aelex
二、元组类中提供的方法
1. 索引
v = tu[0]
print(v)
2. 切片
v = tu[0:2]
print(v)
3. 可以被 for 循环,可迭代对象
for item in tu:
print(item)
4. 字符串转换为元组
s = "asdfas"
li = ["asdf","asdfas"]
tu = ("asdf","as") v = tuple(s)
print(v) # ('a', 's', 'd', 'f', 'a', 's') v = tuple(li)
print(v) # ('asdf', 'asdfas') v = list(tu)
print(v) # ['asdf', 'as'] v = "_".join(tu)
print(v) # asdf_as li = ["asdf","asdfasdf"]
li.extend((11,22,33,))
print(li) # ['asdf', 'asdfasdf', 11, 22, 33]
5. 元组的一级元素不可修改/删除/增加
tu = (111,"alex",(11,22),[(33,44)],True,33,44,)
# 元组,有序。
v = tu[3][0][0]
print(v) #
v=tu[3]
print(v) # [(33, 44)]
tu[3][0] = 567
print(tu) # (111, 'alex', (11, 22), [567], True, 33, 44)
tu[3] = '' # 报错
三、字典类中提供的方法
基本结构
1、字典的 value 可以是任何值——列表、元组、字典、布尔值等
2、布尔值(1,0)、列表、字典不能作为字典的 key,但元组可以
3、索引方式找到字典的元素
4、字典支持 del 删除
info = {
"k1": 18,
"k3": [
11,
[],
(),
{
'kk1': 'vv1',
'kk2': 'vv2',
'kk3': (11,22),
}
],
2: (11,22,33)
}
del info['k1']
print(info) # {2: (11, 22, 33), 'k3': [11, [], (), {'kk2': 'vv2', 'kk1': 'vv1', 'kk3': (11, 22)}]}
del info['k3'][3]['kk1']
print(info) # {2: (11, 22, 33), 'k3': [11, [], (), {'kk2': 'vv2', 'kk3': (11, 22)}]}
5、 for 循环
info = {
2: True,
"k3": [
11,
[],
(),
{
'kk1': 'vv1',
'kk2': 'vv2',
'kk3': (11,22),
}
],
4: (11,22,33,44)
}
for item in info:
print(item) #
#
# k3
for item in info.keys():
print(item) #
#
# k3
for item in info.values():
print(item) # 11, [], (), {'kk2': 'vv2', 'kk1': 'vv1', 'kk3': (11, 22)}]
# True
# (11, 22, 33, 44)
for k,v in info.items():
print(k,v) # 2 True
# 4 (11, 22, 33, 44)
# k3 [11, [], (), {'kk1': 'vv1', 'kk3': (11, 22), 'kk2': 'vv2'}]
6. 根据序列,创建字典,并指定统一的值 fromkeys()
v = dict.fromkeys(["k1",123,""],123)
print(v) # {123: 123, '999': 123, 'k1': 123}
v = dict.fromkeys(["k1",123,"999"])
print(v) # {123: None, '999': None, 'k1': None}
7. 根据Key获取值,key不存在时,可以指定默认值(None)
dic = {"k1":"v1"}
v = dic['k1']
print(v) # v1
v = dic.get('k11111')
print(v) # None 如果用dic则会报错
v = dic.get('k11111','asdf')
print(v) # asdf 如果不存在,就传递asdf
8. 删除并获取值 pop(), popitem()
dic = {
"k1": 'v1',
"k2": 'v2'
}
v = dic.pop('k1',90)
print(dic,v) # {'k2': 'v2'} v1 如果没有k1,就传递90
k,v = dic.popitem() # 随机删除
print(dic,k,v) # {} k2 v2
9. 设置值 setdefault()
dic = {
"k1": 'v1',
"k2": 'v2'
}
v = dic.setdefault('k1','') # 已存在,不设置,获取当前key对应的值
print(dic,v) # {'k1': 'v1', 'k2': 'v2'} v1
v = dic.setdefault('k3','') # 不存在,设置,获取当前key对应的值
print(dic,v) # {'k1': 'v1', 'k2': 'v2', 'k3': '123'} 123
10. 更新(两种写法都可以) update()
dic = {
"k1": 'v1',
"k2": 'v2'
}
dic.update({'k1': '','k3': 123})
print(dic) # {'k2': 'v2', 'k1': '111111', 'k3': 123}
dic.update(k1=123,k3=345,k5="asdf")
print(dic) # {'k5': 'asdf', 'k2': 'v2', 'k1': 123, 'k3': 345}
day12—列表、元组、字典基本语法的更多相关文章
- **python中列表 元组 字典 集合
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...
- 2.9高级变量类型操作(列表 * 元组 * 字典 * 字符串)_内置函数_切片_运算符_for循环
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- python中列表 元组 字典 集合的区别
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- python_列表——元组——字典——集合
列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- python字符串 列表 元组 字典相关操作函数总结
1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...
- Python列表,元组,字典,字符串方法笔记
01. 列表 1.1 列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列 ...
- Python之列表&元组&字典
今天学习了Python的基本数据类型,做以下笔记,以备查用. 一.列表 列表的常用方法: 1.append()方法 def append(self, p_object): # real signatu ...
随机推荐
- java实现第六届蓝桥杯表格计算
表格计算 某次无聊中, atm 发现了一个很老的程序.这个程序的功能类似于 Excel ,它对一个表格进行操作. 不妨设表格有 n 行,每行有 m 个格子. 每个格子的内容可以是一个正整数,也可以是一 ...
- java实现第八届蓝桥杯树型显示
树型显示 题目描述 对于分类结构可以用树形来形象地表示.比如:文件系统就是典型的例子. 树中的结点具有父子关系.我们在显示的时候,把子项向右缩进(用空格,不是tab),并添加必要的连接线,以使其层次关 ...
- vs2019离线下载安装包
官方的离线安装说明-->点击打开 1.下载 vs2019引导程序 ,选择你所需的版本下载,我选择了企业版 vs_enterprise__184447765.1558180718.exe 2.设置 ...
- ReentrantLock原理分析
一 UML类图 通过类图ReentrantLock是同步锁,同一时间只能有一个线程获取到锁,其他获取该锁的线程会被阻塞而被放入AQS阻塞队列中.ReentrantLock类继承Lock接口:内部抽象类 ...
- .Net Core实战之基于角色的访问控制的设计
前言 上个月,我写了两篇微服务的文章:<.Net微服务实战之技术架构分层篇>与<.Net微服务实战之技术选型篇>,微服务系列原有三篇,当我憋第三篇的内容时候一直没有灵感,因此先 ...
- Python教程:matplotlib 绘制双Y轴曲线图
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:数据皮皮侠 双X轴的可以理解为共享y轴 ax1=ax.twiny() ...
- Javascript 随机显示数组元素
$(function(){ var wx_arr = ['gb3055','gb6365']; var storage = window.localStorage; function random_w ...
- Web应用中解决问题的方案步骤?
我们学一个东西,通常两个目的: - 为了解决现有的问题 - 为了解决将来可能会有的问题 所以,在学这些东西之前,先必须了解,它们是用来解决什么问题的. 在Web应用中,我们需要解决的问题可以归纳为三类 ...
- @loj - 2977@ 「THUSCH 2017」巧克力
目录 @description@ @solution@ @accepted code@ @details@ @description@ 「人生就像一盒巧克力,你永远不知道吃到的下一块是什么味道.」 明 ...
- C# Winform界面不能适配高DPI的解决方法
1. 将 Form 的 AutoScaleMode 属性设置为 DPI: 2. 在Program.cs中修改代码 class Program { [STAThread] static void Mai ...