使用列表的一部分(切片)

  • 处理列表的部分元素

切片

  • 指定第一个元素的索引和最后一个元素索引加1
  • 列表名[索引:索引+1] 索引加1:列表中第索引个元素 (左包括右不包括)
  • 未指定索引 列表名[:] 提取列表所有元素(即复制列表)
  • 未指定第一个索引:默认是从列表开头开始提取元素
  • 未指定末尾元素:默认是提取到列表最后一个元素
  • 负数索引返回离列表末尾相应距离的元素
# 切片案例
players = ['charles','martina','michael','florence','eli']
print(players[:])
print(players[0:3])
print(players[:3])
print(players[3:])
print(players[-3:])
['charles', 'martina', 'michael', 'florence', 'eli']
['charles', 'martina', 'michael']
['charles', 'martina', 'michael']
['florence', 'eli']
['michael', 'florence', 'eli']

遍历切片

  • 遍历切片,在for循环中使用切片
# 遍历切片案例
players = ['charles','martina','michael','florence','eli'] for player in players[:3]:
print(player)
charles
martina
michael

复制列表

  • 既有列表,又要创建全新的列表
  • 省略起始索引和终止索引[ : ],让Python创建一个始于第一个元素,终止于最后一个元素的切片
# 复制列表案例1:
my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods[:] print("my favorite foods are :")
print(my_foods)
print("my friend favorite foods are :")
print(friend_foods)
my favorite foods are :
['pizza', 'falafel', 'carrot cake']
my friend favorite foods are :
['pizza', 'falafel', 'carrot cake']
# 复制列表案例2:
my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods[:]
my_foods.append('cannoli')
friend_foods.append('ice cream') print("my favorite foods are :")
print(my_foods)
print("my friend favorite foods are :")
print(friend_foods)
my favorite foods are :
['pizza', 'falafel', 'carrot cake', 'cannoli']
my friend favorite foods are :
['pizza', 'falafel', 'carrot cake', 'ice cream']
# 简单地赋值列表,未用切片
# 不能得到两个列表
my_foods = ['pizza','falafel','carrot cake']
# 将friend_foods 关联到包含在my_foods中的列表,两个变量都只想同一个列表
friend_foods = my_foods
my_foods.append('cannoli')
friend_foods.append('ice cream') print("my favorite foods are :")
print(my_foods)
print("my friend favorite foods are :")
print(friend_foods)
my favorite foods are :
['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream']
my friend favorite foods are :
['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream']

练习

# 1.切片
# 列表,使用切片打印前3个元素,打印中间三个元素,打印末尾三个元素
numbers = list(range(1,10))
print(numbers[:])
print(numbers[0:3])
print(numbers[3:6])
print(numbers[6:9])
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
# 2.比萨
# 想出至少三种喜欢的比萨,将其名称存储在一个列表中,再使用for循环将每种比萨的名称都打印出来
# 修改这个for循环,使其打印包含比萨名称的句子,对于每种比萨都显示一行输出,如“I like pizza”
# 在程序末尾添加一行代码,不在for循环里,指出你有多喜欢比萨,输出应包含对每种比萨的消息,还有一个总结性句子,如“I reall love pizza” pizzas = ['chess pizza','beef pizza','corn pizza','pepperoni pizza']
for pizza in pizzas:
print(pizza)
print("#" * 20)
for pizza in pizzas:
print("I like " + pizza.title() + "!")
print("\nI reall love pizza!")
##################################################
print("#" *50)
print("#" *50)
################################################# # 创建比萨饼的副本,并将其存储到变量friend_pizza中,
# 在原来的比萨列表中添加一种比萨
# 在列表friend_pizzas中添加另一种比萨
# 核实两个不同的列表,为此打印消息“My favorite pizzas are:”,使用for循环打印第一个列表,打印消息“My friend's favorite pizzas are:”,在使用for循环
#打印第二个列表。
friend_pizza = pizzas[:]
pizzas.append('dog pizza')
friend_pizza.append('pig pizza')
print(pizzas)
print(friend_pizza)
print("My favorite pizzas are:")
for pizza in pizzas:
print(pizza)
print("My friend's favorite pizzas are:")
for friend in friend_pizza:
print(friend)
chess pizza
beef pizza
corn pizza
pepperoni pizza
####################
I like Chess Pizza!
I like Beef Pizza!
I like Corn Pizza!
I like Pepperoni Pizza! I reall love pizza!
##################################################
##################################################
['chess pizza', 'beef pizza', 'corn pizza', 'pepperoni pizza', 'dog pizza']
['chess pizza', 'beef pizza', 'corn pizza', 'pepperoni pizza', 'pig pizza']
My favorite pizzas are:
chess pizza
beef pizza
corn pizza
pepperoni pizza
dog pizza
My friend's favorite pizzas are:
chess pizza
beef pizza
corn pizza
pepperoni pizza
pig pizza
# 3.使用多个循环
# 打印复制列表案例2中的元素
my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods[:]
my_foods.append('cannoli')
friend_foods.append('ice cream') print("my favorite foods are :")
for my_food in my_foods:
print(my_food)
print("my friend favorite foods are :")
for friend_food in friend_foods:
print(friend_food)
my favorite foods are :
pizza
falafel
carrot cake
cannoli
my friend favorite foods are :
pizza
falafel
carrot cake
ice cream

Python 使用列表一部分(切片)的更多相关文章

  1. python之列表切片(slice)

    使用索引获取列表的元素(随机读取) 列表元素支持用索引访问,正向索引从0开始 colors=["red","blue","green"] c ...

  2. Python 之列表切片的四大常用操作

    最近在爬一个网站的文档的时候,老师要求把一段文字切割开来,根据中间的文本分成两段 故学习了一段时间的切片操作,现把学习成果po上来与大家分享 1.何为切片? 列表的切片就是处理列表中的部分元素,是把整 ...

  3. python:列表切片知识的总结

    列表的切片操作时对其中的单个或者多个索引对应元素的操作,具有如下特点: ①.切片区间是左闭右开区间 ②.切片的下标可以表示负数,-1表示倒数第一个数,-2表示倒数第二个数 ③.默认步长是1,可增加第三 ...

  4. Python的列表

    1. Python的列表简介 1. 1 列表的定义 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 ,即它的 ...

  5. 初识python 字符串 列表 字典相关操作

    python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 :  // 为取整除 返回的市商的整数部分 例如: 9 // 2  ---> 4  , 9.0 //  ...

  6. 小谈python里 列表 的几种常用用法

    在python中列表的常用方法主要包括增加,删除,查看和修改.下面以举例子的方法具体说明,首先我们创建两个列表,列表是用[ ]表示的,里面的元素用逗号隔开. a=[‘hello’,78,15.6,‘你 ...

  7. 28.Python list列表详解

    在实际开发中,经常需要将一些(不只一个)数据暂储起来,以便将来使用.说到这里,一些读者可能知道或听说过数组,它就可以把多个数据挨个存储到一起,通过数组下标可以访问数组中的各个元素.但使用数组存储数据有 ...

  8. Python数据类型--列表(list)

    Python中列表对应的表示形式是"[]".列表中的元素可以是任何数据类型. 本文以List=[i for i in range(20)]为例进行论述:等价于List=[0, 1, ...

  9. [python拾遗]列表

    python列表拾遗 1.列表可以修改,使用 ‘+’ 将一个新列表附加在原列表的尾部: >>> a = [1,'a'] >>> b = a + [2,'b'] &g ...

  10. Python:列表,元组

    一.列表 和字符串一样,列表也是序列类型,因此可以通过下标或者切片操作访问一个或者多个元素.但是,不一样的,列表是容器类型,是可以进行修改.更新的,即当我们进行修改列表元素,加入元素等操作的时候,是对 ...

随机推荐

  1. 6.Vue路由

    一.路由的基本概念与原理 路由是一个广义与抽象的概念,路由的本质就是对应关系 在开发中,路由分为: (1) 后端路由 (2) 前端路由 1.1 路由 1. 后端路由(根据不同的URL地址分发不同的资源 ...

  2. Jenkins搭建项目过程中遇到的问题解决方法

    1.运行时,报没有权限 报错: rm -rf '/root/jar/*' rm: cannot remove '/root/jar/*': Permission denied 解决方法: 将Jenki ...

  3. vs2019 配置 qt6

    1.下载qt6 我的目录C:\Qt\6.3.1\msvc2019_64\bin C:\Qt\6.3.1\msvc2019_64\include C:\Qt\6.3.1\msvc2019_64\lib ...

  4. MYSQL 变更账号密码

    #1 首先找到Mysql[安装的路径],切换到对应的bin目录,例如安装在D盘 C:User\Administrator> d:(输入盘符回车) D:\> cd D:\MySQL\MySQ ...

  5. 日常笔记-VS

    VS快捷键 按键 作用 CTRL+R,CTRL+W 以点显示空格 CTRL+L 删除当前行 CTRL+D 重复当前行 CTRL+K,D 格式化代码 CTRL+M 展开代码

  6. c++中文编码格式

    c++程序中涉及到中文字符的输入输出以及其他操作经常会出现乱码.乱码主要是由于程序的源文件编码.可执行文件编码以及程序运行环境的编码不匹配导致.比如,c++源程序文件编码为GB18030, 在源程序中 ...

  7. 三天吃透MySQL面试八股文

    本文已经收录到Github仓库,该仓库包含计算机基础.Java基础.多线程.JVM.数据库.Redis.Spring.Mybatis.SpringMVC.SpringBoot.分布式.微服务.设计模式 ...

  8. .NET应用系统的国际化-多语言翻译服务

    上篇文章我们介绍了 .NET应用系统的国际化-基于Roslyn抽取词条.更新代码 系统国际化改造整体设计思路如下: 提供一个工具,识别前后端代码中的中文,形成多语言词条,按语言.界面.模块统一管理多有 ...

  9. Redis与Kafka的区别

    第一: Kafka与Redis PUB/SUB之间较大的区别在于Kafka是一个完整的系统,而Redis PUB/SUB只是一个套件(utility)--没有冒犯Redis的意思,毕竟它的主要功能并不 ...

  10. Vue基础语法整理

    vue基础用法&基础原理整理 1. vue基础知识和原理 1.1 初识Vue 想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象 demo容器里的代码依然符合html规范,只不过混 ...