Python 使用列表一部分(切片)
使用列表的一部分(切片)
- 处理列表的部分元素
切片
- 指定第一个元素的索引和最后一个元素索引加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 使用列表一部分(切片)的更多相关文章
- python之列表切片(slice)
使用索引获取列表的元素(随机读取) 列表元素支持用索引访问,正向索引从0开始 colors=["red","blue","green"] c ...
- Python 之列表切片的四大常用操作
最近在爬一个网站的文档的时候,老师要求把一段文字切割开来,根据中间的文本分成两段 故学习了一段时间的切片操作,现把学习成果po上来与大家分享 1.何为切片? 列表的切片就是处理列表中的部分元素,是把整 ...
- python:列表切片知识的总结
列表的切片操作时对其中的单个或者多个索引对应元素的操作,具有如下特点: ①.切片区间是左闭右开区间 ②.切片的下标可以表示负数,-1表示倒数第一个数,-2表示倒数第二个数 ③.默认步长是1,可增加第三 ...
- Python的列表
1. Python的列表简介 1. 1 列表的定义 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 ,即它的 ...
- 初识python 字符串 列表 字典相关操作
python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // ...
- 小谈python里 列表 的几种常用用法
在python中列表的常用方法主要包括增加,删除,查看和修改.下面以举例子的方法具体说明,首先我们创建两个列表,列表是用[ ]表示的,里面的元素用逗号隔开. a=[‘hello’,78,15.6,‘你 ...
- 28.Python list列表详解
在实际开发中,经常需要将一些(不只一个)数据暂储起来,以便将来使用.说到这里,一些读者可能知道或听说过数组,它就可以把多个数据挨个存储到一起,通过数组下标可以访问数组中的各个元素.但使用数组存储数据有 ...
- Python数据类型--列表(list)
Python中列表对应的表示形式是"[]".列表中的元素可以是任何数据类型. 本文以List=[i for i in range(20)]为例进行论述:等价于List=[0, 1, ...
- [python拾遗]列表
python列表拾遗 1.列表可以修改,使用 ‘+’ 将一个新列表附加在原列表的尾部: >>> a = [1,'a'] >>> b = a + [2,'b'] &g ...
- Python:列表,元组
一.列表 和字符串一样,列表也是序列类型,因此可以通过下标或者切片操作访问一个或者多个元素.但是,不一样的,列表是容器类型,是可以进行修改.更新的,即当我们进行修改列表元素,加入元素等操作的时候,是对 ...
随机推荐
- 关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数...
关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数... 功能: 1.不需考虑 SizeMode 情况 2.可以获取通过鼠标右键点击的 Tab 3.且顺便返回鼠标左键点的 T ...
- Adams:导出动画
1 首先模型在adams里能正常运动,点击start simulation仿真一遍. 2 然后在界面上按F8进入Plotting界面. 3 在左上角把Plotting换成Animation. 4 然后 ...
- TP5.1模板循环标签
第一种volist name=assign中的变量名 id=数组中的key offset=开始循环的位置 length=步长 {volist name='list' id='vo' offset='0 ...
- STM32上特殊管脚应用 重映射那个GPIO_Remap_SWJ_JTAGDisable
对于初学习者来说为什么用到PB3和PB4时无法控制输出呢? 下面就这一问题进行分析讲解. 首先,STM32F10x系列的MCU复位后,PA13/14/15 & PB3/4默认配置为JTAG功能 ...
- 认证全家桶(Cookie、Session、Token、JWT)
什么是认证(Authentication) 通俗地讲就是验证当前用户的身份,证明"你是你自己"(比如:你每天上下班打卡,都需要通过指纹打卡,当你的指纹和系统里录入的指纹相匹配时,就 ...
- Skywalking搭建
因毕设前端太丑,所以后端要稍微搞的高大上一点才能忽悠住老师,所以分享一下搭建skywalking的步. 我是参考https://baijiahao.baidu.com/s?id=17211835411 ...
- Spring IOC——源码分析
Spring 容器的 refresh() 创建容器 1 //下面每一个方法都会单独提出来进行分析 2 @Override 3 public void refresh() throws BeansExc ...
- 华为Sound Joy用后感
在买华为Sound Joy音响前,我就在几个相似的音响之中衡量,其中有MIFA WildRod和JBL 万花筒6做了对比,在经过一系列的对比(网上查阅资料)之后,我最终选择了华为的Sound Joy这 ...
- SQL Server底层架构技术对比
背景 数据库是信息化的基石,支撑着整个业务系统,发挥着非常重要的作用,被喻为"IT的心脏".因此,让数据库安全.稳定.高效地运行已经成为IT管理者必须要面对的问题.数据库在底层架构 ...
- selenium验证码处理-打码平台操作
1.进入打码平台(超人,斐斐) 斐斐-------官网: 超人-------官网: 2.选择对应的开发文档,下载对应的demo示例,并把demo的python脚本放到项目包管理地址去 参考: 超人的开 ...