一、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. Chisel3 - 基本数据类型

    https://mp.weixin.qq.com/s/bSrM-wLRn7O_75xYKeoaEQ   Chisel中的基本数据类型,不是Verilog中的Wire和Reg.Wire和Register ...

  2. xss(跨站脚本攻击)

    xss(跨站脚本攻击) 原理:攻击者可以通过在页面中注入恶意链接或者脚本代码,当受害者访问时,脚本代码会在其浏览器中执行,这个时候,我们可以获取当前用户的cookie或者进行重定向等操作. xss造成 ...

  3. ASP.NET给图片自动添加水印

    先建一个类,感觉注释已经很详细了,有不懂的欢迎评论 using System; using System.Collections.Generic; using System.Drawing; usin ...

  4. Java实现 蓝桥杯算法提高金明的预算方案

    题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:"你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过NN元 ...

  5. Java实现 蓝桥杯VIP 算法提高 陶陶摘苹果2

    算法提高 陶陶摘苹果2 时间限制:1.0s 内存限制:256.0MB 问题描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出n个苹果.苹果成熟的时候,陶陶就会跑去摘苹果.陶陶有个30厘米高的板凳, ...

  6. Java实现 LeetCode 55 跳跃游戏

    55. 跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] ...

  7. Java实现 蓝桥杯 历届试题 邮局

    问题描述 C村住着n户村民,由于交通闭塞,C村的村民只能通过信件与外界交流.为了方便村民们发信,C村打算在C村建设k个邮局,这样每户村民可以去离自己家最近的邮局发信. 现在给出了m个备选的邮局,请从中 ...

  8. 一文了解Docker容器技术的操作

    一文了解Docker容器技术的操作 前言一.Docker是什么二.Docker的安装及测试Docker的安装Docker的Hello world测试三.Docker的常见操作镜像的基本操作容器的基本操 ...

  9. springmvc使用<mvc:default-servlet-handler/>导致的handler失效

    使用springmvc时,会在web.xml中配置对所有请求进行拦截 <!-- 配置springmvc拦截的请求--> <servlet-mapping> <servle ...

  10. 01-Python初体验

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...