IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 04.Python基础_列表_元组_字典_集合 -> 正文阅读

[Python知识库]04.Python基础_列表_元组_字典_集合

1.列表

1.1list

列表的作用就是存放一堆东西,以便后续进行排序, 筛选,提取等操作,弄一个列表, 先放进去
列表中的元素,没有数据类型的限制,可以为任何数据类型

s = [1,2,3,4,5,6,7,8,9,10]
s2 = ['临','兵','斗','者','皆','列','阵','在','前']
list1 = [1, 2, 3,'on','go',True,False,None]

结果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
['临', '兵', '斗', '者', '皆', '列', '阵', '在', '前']
[1, 2, 3, 'on', 'go', True, False, None]

2.列表的索引和切片

list是一种有序的集合,可以随时添加和删除其中的元素。 也就是说列表是内部元素可变的一个容器mutable
列表和字符串一样,是一种可迭代对象.
因此可以和字符串一样进行索引和切片.语法方面是一样的.
注意:左开右闭

L[起始位置:终止位置:步长] # 包含起始位置,不包含终止位置

索引是从0,1,2,3,4,5,6,7,8…

l = [1,2,3,4,5,6,7,8,9,0]

l[2]
3

案列1

数值型

l = [1,2,3,4,5,6,7,8,9,0]
l[-2:0:-3]
l[1::2]
结果
[9, 6, 3]
[2, 3, 4, 5, 6, 7, 8]
[2, 4, 6, 8, 0]

案例2

# 以下三个结果是相同的
L = [1,2,3,4,5,]
L[0:3:1] #默认从第一个开始
L[:3:] #默认步长为1
L[:3] #默认从第一个开始且步长为1
结果
[1, 2, 3]

案例3

字符型
L[起始位置:终止位置:步长]
步长:正数表示从左到右,负数表示从右到左

list1 = [33434, '你好', 4545.565555, 'iii', True]

list1[::-1]
[True, 'iii', 4545.565555, '你好', 33434]

list1[::-2]
[True, 4545.565555, 33434]

list1[-2:0:-1]
['iii', 4545.565555, '你好']

索引是从0,1,2,3,4,5,6,7,8…

练习1 提取数据

L = ['python','java', 'C', 'PHP']

从列表中提取出, python,PHP ,[‘java’,‘C’],[‘PHP’,‘java’]

L = ['python','java', 'C', 'PHP']
L[0]
'python'

L[3]
'PHP'

L[1:3]
['java', 'C']

L[-1:-4:-2]
['PHP', 'java']

练习2 用索引取出下面list的指定元素:

L = [
    ['Apple', 'Google', 'Microsoft'],
    ['Java', 'Python', 'Ruby', 'PHP'],
    ['Adam', 'Bart', 'Lisa']
]
# 打印Apple:
L = [
    ['Apple', 'Google', 'Microsoft'],
    ['Java', 'Python', 'Ruby', 'PHP'],
    ['Adam', 'Bart', 'Lisa']
]
# 打印Python:
print(L[1][1])
# 打印Lisa:
print(L[2][2]

3.修改列表的元素值

通过元素的索引位置来索引元素

L = ['python','java','C','PHP']

L[0] = 'R'
L
['R', 'java', 'C', 'PHP']

L[-1] = "JavaScript"
L
['R', 'java', 'C', 'JavaScript']

L[1:3] = 'CSS','HTML'
L
['R', 'CSS', 'HTML', 'JavaScript']

4.列表的常用方法

4.1append添加元素(与extend有区别)

通过append可以向列表添加元素 添加数组或者字符串

L = ['Superman','Hulk','Spiderman']
L.append('Leifengxia')
L
['Superman', 'Hulk', 'Spiderman', 'Leifengxia']

4.2练习 使用for循环,把随机生成的数字一次添加到列表中去

L = []
for i in range(1,10):
    L.append(i)
L
[1, 2, 3, 4, 5, 6, 7, 8, 9]
L = []
for i in range(1,10):
    if i %  2 == 0:
        L.append(i)
L
[2, 4, 6, 8]

4.3 extend 添加数据(与append有区别)

通过extend可以将另一个集合中的元素逐一添加到列表中

a = [1,2]
b = [3,4]
a.extend(b)
a
[1, 2, 3, 4]

4.4 extend 与 append的区别

extend 与append相同点在于都可以添加数据,不过对数据添加的形式不一样
append添加元素是以整个数组一起加进去
而extend添加数据是以一个一个字符串的形式添加进去

a = [1,2]
b = [3,4]

a.append(b)
a
[1, 2, [3, 4]]

a.extend(b)
a
[1, 2, 3, 4]

4.5 insert插入元素

insert(index, object) 在指定位置index前插入元素object

a = ['插','入','素']
a.insert( 2,'元')
a

['插', '入', '元', '素']

4.6 查找元素 in not in index count

test = ['插', '入', '元', '素','元']

4.6.1 in的用法 检测该元素是否在里面

'入' in test
True

4.6.2not取反

'元' not in test
False

4.6.3 Index索引数组的位置(与find类似)

test.index('元')
2

4.6.4 find用法

s ='xyz'
s.find('z')
2

4.6.5count 查找数组的数量

test.count('元')
2

4.7 删除元素del pop remove

4.7.1del:根据下标进行删除

test = ['能','不','能','给','我','一','首','歌','的','时间']
del test [1:3]
test
['能', '给', '我', '一', '首', '歌', '的', '时间']

4.7.2 pop:删除最后一个元素

默认删除最后一个元素 可以指定删除某一个元素 直接输入数组的索引值就好了

movieName = ['加勒比海盗','骇客帝国','第一滴血','指环王','霍比特人','速度与激情']
movieName.pop()
movieName

4.7.3 remove:根据元素的值进行删除

指定删除某一个元素

movieName = ['加勒比海盗','骇客帝国','第一滴血','指环王','霍比特人','速度与激情']
movieName.remove('骇客帝国')
movieName

4.8 对元素排序sort reverse

排序(sort, reverse)

4.8.1 sort 排序

sort方法是将list按特定顺序重新排列,默认为由小到大,参数reverse=True可改为倒序,由大到小。

默认由小到大

a = [1, 4, 2, 3]
a
a.sort()
a
[1, 2, 3, 4]

4.8.2 reverse方法是将list逆置

reverse = True表示从大到小 默认False

a = [1, 4, 2, 3]
a.sort(reverse=True)
a
[4, 3, 2, 1]

4.9 练习

有以下列表

L = [‘最怕空气突然安静’,‘最怕朋友突然的关心’,‘最怕回忆’,‘突然翻滚绞痛着’,‘不平息’,‘最怕忽然’,‘听到你的消息’]

M = [‘想念如果会有声音’,‘不愿那是悲伤的哭泣’,‘终于让自己属于’,‘我自己’]

  1. 将M列表中的歌词合并到L中,使歌词串联在一起.

  2. 在列表中插入缺少的一句歌词,使顺序连续.

  3. 查找列表中是否含有元素"最怕回忆"

  4. 删除列表中的"最怕回忆"

  5. 将歌词拼接成一个字符串

  6. 将歌词翻转,使用join方法

#全部行都能输出
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"

L = ['最怕空气突然安静','最怕朋友突然的关心','最怕回忆','突然翻滚绞痛着','不平息','最怕忽然','听到你的消息']
M = ['想念如果会有声音','不愿那是悲伤的哭泣','终于让自己属于','我自己']
L.extend(M)
L
L.index('最怕回忆')
L
L.remove('最怕回忆')

['最怕空气突然安静',
 '最怕朋友突然的关心',
 '最怕回忆',
 '突然翻滚绞痛着',
 '不平息',
 '最怕忽然',
 '听到你的消息',
 '想念如果会有声音',
 '不愿那是悲伤的哭泣',
 '终于让自己属于',
 '我自己']
2
['最怕空气突然安静',
 '最怕朋友突然的关心',
 '最怕回忆',
 '突然翻滚绞痛着',
 '不平息',
 '最怕忽然',
 '听到你的消息',
 '想念如果会有声音',
 '不愿那是悲伤的哭泣',
 '终于让自己属于',
 '我自己']

4.10 练习

小应用: 分别打印出字符串的索引值和字符串本身

colors = ['red', 'green', 'blue', 'yellow']

n = 0
for i in colors:
    print(n, "--->", colors[n])
    n+=1

0 ---> red
1 ---> green
2 ---> blue
3 ---> yellow

这样也可以,效果也是一样

for i in range(len(colors)):
    print(i , "---->", colors[i])

这个也可以

for i, color in enumerate(colors):
    print(i, "---->", color)

4.11 列表生成式List Comprehensions

如果我们想要生成一个由1 - 10的数字组成的列表,都有什么办法呢?
1.

a = [1,2,3,4,5,6,7,8,9,10]
a
list(range(1,11))
L = []
for i in range(0,12):
    L.append(i)
L
# 把上面的循环代码整合一下
[i for i in range(1,11) ]
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-08-06 09:35:07  更:2021-08-06 09:37:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 14:45:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码