2.列表--《Python编程:从入门到实践》
2.1 列表
列表由一系列按特定顺序排列的元素组成。在Python中,用方括号([])来表示列表,并用逗号来分隔其中的元素。
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles)
# Python 将打印列表的内部表示,包括方括号
# ['trek', 'cannondale', 'redline', 'specialized']
2.1.1 访问列表元素
列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。请注意索引是从0开始的。
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles[0].title()) # Trek
Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-1,可让Python返
回最后一个列表元素。-2等以此类推。
print(bicycles[-1].title()) # Specialized
2.2 修改、添加和删除元素
我们创建的大多数列表都将是动态的,这意味着列表创建后,将随着程序的运行增删元素。
修改:motorcycles[0] = 'ducati' # 指定列表名和要修改的元素的索引,再指定该元素的新值。
添加:motorcycles.append('ducati') # 在列表末尾添加元素
插入:motorcycles.insert(0, 'ducati') # 在列表开始位置插入元素
删除:
基于位置的删除 del 与 pop:
如果你要从列表中删除一个元素,且不再以任何方式使用它,就使用del语句。
如果你要在删除元素后还要通过返回值继续使用它,就使用方法pop()。
del motorcycles[0] # 删除指定位置元素
popped_motorcycle = motorcycles.pop() # 删除列表末尾的元素相当于弹出栈顶元素
popped_motorcycle2 = motorcycles.pop(0) # 删除指定位置元素
基于值的删除 remove:
motorcycles.remove('ducati')
2.3 对列表进行组织
2.3.1 使用方法 sort()对列表进行永久性排序
Python方法sort()让我们对列表进行排序。按字母正序且从大写到小写的顺序。
cars = ['Bmw', 'audi', 'toyota', 'subaru']
cars.sort() # 按字母顺序排序,从大写到小写排序
print(cars) # ['Bmw', 'audi', 'subaru', 'toyota']
反序排序:sort(reverse=True)
cars.sort(reverse=True)
print(cars) # ['toyota', 'subaru', 'audi', 'Bmw']
2.3.2 使用函数 sorted() 对列表进行临时排序
函数 sorted() 让你能够按特定顺序显示列表元素,同时不影响它们在列表中的原始排列顺序。同理如果你要按与字母顺序相反的顺序显示列表,也可向函数sorted()传递参数reverse=True。
cars = ['bmw', 'audi', 'toyota', 'subaru']
print(sorted(cars)) # 临时排序: ['audi', 'bmw', 'subaru', 'toyota']
print(cars) # 原列表不变:['bmw', 'audi', 'toyota', 'subaru']
cars2 = sorted(cars, reverse=True) # 可以保存临时排序结果,这里顺便倒序一下
print(cars2) # ['toyota', 'subaru', 'bmw', 'audi']
2.3.3 使用 reverse() 反转列表
cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.reverse() # 反转列表
print(cars) # ['subaru', 'toyota', 'audi', 'bmw']
# print(cars.reverse()) # 这样写使错误的
2.3.4 使用 len() 确定列表的长度
cars = ['bmw', 'audi', 'toyota', 'subaru']
car_len = len(cars)
2.列表--《Python编程:从入门到实践》的更多相关文章
- Python编程从入门到实践笔记——操作列表
Python编程从入门到实践笔记——操作列表 #coding=utf-8 magicians = ['alice','david','carolina'] #遍历整个列表 for magician i ...
- Python编程从入门到实践笔记——列表简介
Python编程从入门到实践笔记——列表简介 #coding=utf-8 #列表——我的理解等于C语言和Java中的数组 bicycles = ["trek","cann ...
- Python编程从入门到实践笔记——文件
Python编程从入门到实践笔记——文件 #coding=gbk #Python编程从入门到实践笔记——文件 #10.1从文件中读取数据 #1.读取整个文件 file_name = 'pi_digit ...
- Python编程从入门到实践笔记——函数
Python编程从入门到实践笔记——函数 #coding=gbk #Python编程从入门到实践笔记——函数 #8.1定义函数 def 函数名(形参): # [缩进]注释+函数体 #1.向函数传递信息 ...
- Python编程从入门到实践笔记——用户输入和while循环
Python编程从入门到实践笔记——用户输入和while循环 #coding=utf-8 #函数input()让程序暂停运行,等待用户输入一些文本.得到用户的输入以后将其存储在一个变量中,方便后续使用 ...
- Python编程从入门到实践笔记——字典
Python编程从入门到实践笔记——字典 #coding=utf-8 #字典--放在{}中的键值对:跟json很像 #键和值之间用:分隔:键值对之间用,分隔 alien_0 = {'color':'g ...
- Python编程从入门到实践笔记——if语句
Python编程从入门到实践笔记——if语句 #coding=utf-8 cars=['bwm','audi','toyota','subaru','maserati'] bicycles = [&q ...
- 《Python编程从入门到实践》_第十章_文件和异常
读取整个文件 文件pi_digits.txt #文件pi_digits.txt 3.1415926535 8979323846 2643383279 下面的程序打开并读取整个文件,再将其内容显示到屏幕 ...
- #Python编程从入门到实践#第四章笔记
#Python编程从入门到实践#第四章笔记 操作列表 1.遍历列表 使用for循环,遍历values列表 for value in values: print(value) 2.数字列表 使 ...
- Python编程从入门到实践
Python编程从入门到实践1 起步2 变量和简单数据类型3 列表简介4 操作列表5 if语句6 字典7 用户输入和while循环8 函数9 类10 文件和异常11 测试代码12 武装飞船13 外星人 ...
随机推荐
- vue <a>标签 href 是参数的情况下如何使用
想在页面中使用a标签打开一个新页面进行跳转 例如:msgZi.blogAddress 的值是 https://www.baidu.com 正确的写法: <a :href="goBlog ...
- <vue 组件 4、插槽的使用>
代码结构 一. 01-slot-插槽的基本使用 1. 效果 同样的一个插槽,父组件调用的时候不同展现的内容就不同 2.代码 01-slot-插槽的基本使用.html <!DOCTYPE ...
- C语言常用字符串操作函数整理(详细全面)
目录 字符串相关 1.char *gets(char *s); #include<stdio.h> 2.char *fgets(char *s, intsize, FILE *stream ...
- 《3D编程模式》写书-第3次记录
大家好,这段时间我完成了"积木模式"."管道模式"."多线程模式"."依赖隔离模式"的初稿 目前我已经完成了所有模式(7 ...
- Vue源码编译过程
Vue源码编译过程一.挂载初始化$mounted会挂载组件,不存在 render 函数时需要编译(compile);二.compile1.compile 分为 parse,optimize 和 gen ...
- python常见面试题讲解(十二)句子逆序
题目描述 将一个英文语句以单词为单位逆序排放.例如"I am a boy",逆序排放后为"boy a am I"所有单词之间用一个空格隔开,语句中除了英文字母外 ...
- Docker-01基本命令
1.Docker安装 系统镜像为Centos7.x yum包更新到最新 sudo yum update 安装需要的软件包,yum-util提供yum-config-manager功能.另外两个是dev ...
- [转帖]是什么让 Redis“气急败坏”回击:13 年来,总有人想替 Redis 换套新架构
https://www.infoq.cn/article/AlF5NIhHdskayl0MTyQG 回击就代表输了?! 今年年中,一位前谷歌.前亚马逊的工程师推出了他创作的开源内存数据缓存系统 Dra ...
- [转帖]Nginx 反向代理解决跨域问题
https://juejin.cn/post/6995374680114741279 编写代码两分钟,解决跨域两小时,我吐了. 如果对跨域还不了解的朋友,可以看这篇:[基础]HTTP.TCP/IP 协 ...
- [转帖]linux块I/O总体概括
直接先上重点,linux中IO栈的完全图如下: 系统中能够随机访问固定大小数据片的硬件设备称作块设备.固定大小的数据片称为块.常见的块设备就是硬盘了.不能随机访问的就是字符设备了,管理块设备比字符设备 ...