一、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—列表、元组、字典基本语法的更多相关文章

  1. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  2. 2.9高级变量类型操作(列表 * 元组 * 字典 * 字符串)_内置函数_切片_运算符_for循环

    高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...

  3. Python第三天 序列 数据类型 数值 字符串 列表 元组 字典

    Python第三天 序列  数据类型  数值  字符串  列表  元组  字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...

  4. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  5. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  6. python_列表——元组——字典——集合

    列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  7. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  8. python字符串 列表 元组 字典相关操作函数总结

    1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...

  9. Python列表,元组,字典,字符串方法笔记

    01. 列表 1.1 列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列 ...

  10. Python之列表&元组&字典

    今天学习了Python的基本数据类型,做以下笔记,以备查用. 一.列表 列表的常用方法: 1.append()方法 def append(self, p_object): # real signatu ...

随机推荐

  1. Maven_setting文件/解释

    setting文件解释: setting.xml配置文件 maven的配置文件settings.xml存在于两个地方: 1.安装的地方:${M2_HOME}/conf/settings.xml 2.用 ...

  2. JAVASE(十六) IO流 :File类、节点流、缓冲流、转换流、编码集、对象流

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.File类型 1.1.File类的理解 File类是在java.io包下 File可以理解成一个文件 ...

  3. Linux内核进程调度overview(1)

    一.概述 决定何时.如何选择一个新进程运行的这组规则叫做:调度策略(scheduling policy). Linux的调度是基于分时技术(time sharing):多个进程以“时间多路复用”方式运 ...

  4. Java实现 蓝桥杯VIP 算法训练 乘法表

    问题描述 输出九九乘法表. 输出格式 输出格式见下面的样例.乘号用""表示. 样例输出 下面给出输出的前几行: 11=1 21=2 22=4 31=3 32=6 33=9 41=4 ...

  5. Java实现第十届蓝桥杯旋转

    试题 F: 旋转 时间限制: 1.0s 内存限制: 512.0MB 本题总分:15 分 [问题描述] 图片旋转是对图片最简单的处理方式之一,在本题中,你需要对图片顺时 针旋转 90 度. 我们用一个 ...

  6. js数据劫持 Object.defineProperty() 作用

    原生js Object.defineProperty() 作用 假设我们有一个obj对象,我们要给他设置一个name属性会这么做 Object.defineProperty()也可以设置对象属性 这个 ...

  7. [C#.NET 拾遗补漏]03:你可能不知道的几种对象初始化方式

    阅读本文大概需要 1.2 分钟. 随着 C# 的升级,C# 在语法上对对象的初始化做了不少简化,来看看有没有你不知道的. 数组的初始化 在上一篇罗列数组的小知识的时候,其中也提到了数组的初始化,这时直 ...

  8. 华为EMUI在service中不能打印debug级别的日志

    华为emui在service里面不能打印debug级别的日志,因为这个小问题调试了一上午,刚开始我还以为emui把系统service的启动流程都改了呢

  9. k8s学习-Ingress

    4.5.Ingress Ingress-Nginx github 地址:https://github.com/kubernetes/ingress-nginxIngress-Nginx 官方网站:ht ...

  10. 【Spring注解驱动开发】使用@Scope注解设置组件的作用域

    写在前面 Spring容器中的组件默认是单例的,在Spring启动时就会实例化并初始化这些对象,将其放到Spring容器中,之后,每次获取对象时,直接从Spring容器中获取,而不再创建对象.如果每次 ...