处理列表中的部分元素——切片

1. 切片

players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3]) # 打印列表的切片,其中包含前三个元素,输出也是一个列表
print(players[1:4]) # 提取列表的第2、3、4个元素
print(players[:4]) # 没有指定索引,故打印出列表的前4个元素
print(players[2:]) # 没有指定终止索引,故打印出列表中第二个元素之后的所有元素(不包含第二个,由于索引从0开始)
print(players[-3:]) # 列表从右往左的索引从-1开始,故打印出列表的最后三个元素
print(players[:-2]) # 切片时不包含指定的第二个索引,故打印除了最后两个元素以外的其他元素

运行结果:

['charles', 'martina', 'michael']
['martina', 'michael', 'florence']
['charles', 'martina', 'michael', 'florence']
['michael', 'florence', 'eli']
['michael', 'florence', 'eli']
['charles', 'martina', 'michael']

2. 遍历切片

for player in players[:3]:    # 遍历前3个元素
print(player.title())

运行结果:

Charles
Martina
Michael

3. 复制列表

my_foods = ['pizza', 'falafel', 'carrot cake']    # 定义列表
friend_foods = my_foods[:] # 复制列表
print('My favorite foods are:')
print(my_foods)
print("\nMy friend's favorite foods are:")
print(friend_foods)

运行结果:

My favorite foods are:
['pizza', 'falafel', 'carrot cake'] My friend's favorite foods are:
['pizza', 'falafel', 'carrot cake']

为每个列表添加一个元素:

my_foods.append('cannoli')
friend_foods.append('ice cream')
print('My favorite foods are:')
print(my_foods)
print("\nMy friend's favorite foods are:")
print(friend_foods)

运行结果:

My favorite foods are:
['pizza', 'falafel', 'carrot cake', 'cannoli'] My friend's favorite foods are:
['pizza', 'falafel', 'carrot cake', 'ice cream']

若将复制列表代码friend_foods = my_foods[:]用friend_foods = my_foods替代,运行上边添加元素代码会怎么呢?

My favorite foods are:
['pizza', 'falafel', 'carrot cake', 'cannoli', 'cannoli', 'ice cream'] My friend's favorite foods are:
['pizza', 'falafel', 'carrot cake', 'cannoli', 'cannoli', 'ice cream']

比较运行结果可知:代码friend_foods = my_foods只是将两个变量指向同一个列表;

                              代码friend_foods = my_foods[:]是完全复制了一个列表,得到两个独立的列表。

Note:复制列表时有么有方括号将会得到两种不同的结果。

Python中使用列表的一部分——参考Python编程从入门到实践的更多相关文章

  1. julia与python中的列表解析.jl

    julia与python中的列表解析.jl #=julia与python中的列表解析.jl 2016年3月16日 07:30:47 codegay julia是一门很年轻的科学计算语言 julia文档 ...

  2. Python中的列表解析和生成器表达式

    Python中的列表解析和生成器表达式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.列表解析案例 #!/usr/bin/env python #_*_coding:utf-8 ...

  3. Python中对列表排序实例

    Python中对列表排序实例 发布时间:2015-01-04 09:01:50 投稿:junjie 这篇文章主要介绍了Python中对列表排序实例,本文给出了9个List的排序实例,需要的朋友可以参考 ...

  4. python中的列表及numpy数组排序

    一.列表排序  # python中对列表排序有sort.sorted两种方法,其中sort是列表内置方法,其帮助文档如下:In [1]: help(sorted) Help on built-in f ...

  5. Python中的列表生成式和多层表达式

    Python中的列表生成式和多层表达式 如何生成[1x1, 2x2, 3x3, ..., 10x10]的列表? L=[]; ,): L.append(x*x) print L print (" ...

  6. Python中的列表,元组,字符串之间的相互转化

    Python中的列表元组和字符串之间的相互转化需要利用,tuple(),list(),str(). 示例如下: >>> the_string = "hello I'am x ...

  7. 逗号分隔的字符串转换为Python中的列表 split

    将逗号分隔的字符串转换为Python中的列表   给定一个字符串: 它是由逗号分隔的几个值的序列: mStr = '192.168.1.1,192.168.1.2,192.168.1.3' 如何将字符 ...

  8. Python编程从入门到实践笔记——操作列表

    Python编程从入门到实践笔记——操作列表 #coding=utf-8 magicians = ['alice','david','carolina'] #遍历整个列表 for magician i ...

  9. Python编程从入门到实践笔记——列表简介

    Python编程从入门到实践笔记——列表简介 #coding=utf-8 #列表——我的理解等于C语言和Java中的数组 bicycles = ["trek","cann ...

随机推荐

  1. SQL查询练习题

    1.查询学生"百里守约"的基本信息 select * from students where name='百里守约' 2.查询学生百里守约"或"百里玄策&quo ...

  2. Barman安装及备份PostgreSQL

    barman特点 零数据丢失备份.保证用户在只有一台备份服务器的情况下达到零数据丢失. 与备份服务器合作.允许备份服务器在与主服务器的流式复制不可用时,从barman获取wal文件. 可靠的监控集成. ...

  3. 树莓派PWM

    import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(26, GPIO.OUT) p = GPIO.PWM(26, ...

  4. Spring源码之XmlBeanDefinitionReader与Resource

    一.DefaultListableBeanFactory类, 里面有一个成员变量beanDefinitionMap,Bean定义对象的Map, BeanDefinition就对应XML的属性配置 /* ...

  5. Python 3.8.0 final¶ Release date: 2019-10-14

    https://docs.python.org/3.8/whatsnew/changelog.html#python-3-8-0 Core and Builtins bpo-38469: Fixed ...

  6. eclipse自定义代码块折叠

    1.下载插件 com.cb.eclipse.folding_1.0.6.jar 下载地址:http://files.cnblogs.com/haiq/代码折叠插件_com.cb.eclipse.fol ...

  7. java使用json-lib库的json工具类.

    import net.sf.ezmorph.object.DateMorpher;import net.sf.json.JSONArray;import net.sf.json.JSONObject; ...

  8. ubuntu2 setting

    luo@luo-ThinkPad-W540:research$ conda create -n tf2019 python=3.6Solving environment: done ==> WA ...

  9. ES6深入浅出-12 ES6新增的API(下)-1.录屏

    String.includes es5里面判断字符串是否存在的方法 search searcg的厉害之处是可以使用正则 match正则的方式 repeat -1遍,就不合法 startsWith 判断 ...

  10. SAP标准屏幕中字段描述增强

    转自:https://www.cnblogs.com/sap-ronny/p/7921817.html如果想要改变标准屏幕中的字段名称,如把物料主数据基本数据元素的名字改为我们想要的名字 . 1.首先 ...