【Python】列表~深入篇
列表是一列按特定顺序排列的元素组成。
在Python中,用方括号[]来表示列表
下面是一个语言列表
Language = ['Chinese','English','Franch','Deutsch']
print(Language)
打印结果包括方括号等
['Chinese', 'English', 'Franch', 'Deutsch']
1.1 访问列表元素
print(Language[0])
打印结果:
Chinese
列表示通过索引来访问其值的,但是值是从0开始的,而不是1,访问倒数的值,其索引为负数即可。
print(Language[-1])
print(Language[-2])
打印结果:
Deutsch
Franch
1.2 修改、添加和删除元素
1.2.1 修改
例如:将上述元素中的English修改为Japanese
Language[1] = 'Japanese'
print(Language)
打印结果:
['Chinese', 'Japanese', 'Franch', 'Deutsch']
['Chinese', 'Deutsch']
1.2.2 添加
append()添加元素至末尾
Language.append('English')
print(Language)
打印结果:
['Chinese', 'Japanese', 'Franch', 'Deutsch', 'English']
insert()指定新元素的索引与值即可
Language.insert(2,'Hindi')
print(Language)
打印结果:
['Chinese', 'Japanese', 'Hindi', 'Franch', 'Deutsch', 'English']
1.2.3 删除
del()删除元素(需要指定删除的元素的值)
del Language[1]
print(Language)
打印结果:
['Chinese', 'Hindi', 'Franch', 'Deutsch', 'English']
del()删除的元素一旦删除则无法再访问了。
pop()删除列表末尾的值
del_Language = Language.pop()
print(del_Language)
print(Language)
打印结果:
English
['Chinese', 'Hindi', 'Franch', 'Deutsch']
删除列表中任意位置的值,只需要指定索引即可
del_Language_2 = Language.pop(2)
print(del_Language_2)
print(Language)
打印结果:
Franch
['Chinese', 'Hindi', 'Deutsch']
remove()根据值删除
del_str = 'Hindi'
Language.remove(del_str)
print(Language)
打印结果:
['Chinese', 'Deutsch']
1.3 组织列表
sort()永久性排序
color = ['red','orange','green','blue']
print(color)
color.sort()
print(color)
打印结果
['red', 'orange', 'green', 'blue']
['blue', 'green', 'orange', 'red']
sorted()临时排序
color = ['red','orange','green','blue']
print("Here is the original list:")
print(color)
print("\nHere is the sorted list:")
print(sorted(color))
print("\nHere is the original list again:")
print(color)
Here is the original list:
['red', 'orange', 'green', 'blue']
Here is the sorted list:
['blue', 'green', 'orange', 'red']
Here is the original list again:
['red', 'orange', 'green', 'blue']
以上打印结果可以清晰看出sorted()只是对列表进行了临时排序,不会改变列表的本质。
1.4 len()列表长度
color = ['red','orange','green','blue']
print(len(color))
打印结果:
4
1.5 操作列表
当列表中元素比较多时,如果还是用原先按照索引取值打印列表,那么会非常的麻烦,那么我们就可以引入for循环,遍历元素
如下,是定义的一个for循环打印元素
①cars = ['Lincoln','Ford','Hummer','Audi','Skoda','Toyota']
②for car in cars:
③ print(car)
④ print('I like '+car+'!')
⑥print('I really like car!')
打印结果:
|
Lincoln |
第一句代码:定义一个汽车品牌列表
第二句代码:循环列表
第三句代码:打印各个品牌
第四句代码:拼接字符串打印,循环打印”I like..”
第五句代码:在循环完毕,最后打印一句“Ireally like car!”
特别说明:在for循环后边,没有缩进的代码都只执行一次,而不会重复执行。
1.6 创建数值列表range()
1.6.1 函数range()
语法:range(起始值,结束值,步长值)
for i in range(1,6,2):
print(i)
打印结果:
1
3
5
1.6.2 使用range()创建数字列表
使用函数list()将range()的结果直接转换为列表
numbers = list(range(1,8))
print(numbers)
打印结果:
[1, 2, 3, 4, 5, 6, 7]
例如:创建一个列表,打印1~10的整数的平方
nums = []
for i in range(1,11):
nums.append(i**2)
print(nums)
打印结果:
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
上述代码看起来感觉比较复杂,那么简单一点的代码是什么样子的呢?
nums = [i**2 for i in range(1,11)]
print(nums)
解析:首先指定一个描述性列表名nums,然后,指定一个方括号,并定义一个表达式,用于生成你要存储到列表的值,在这个实例中,表达式为i**2,计算平方值。接下来,编写一个for循环,用于给表达式提供值,再加上有括号。这里的for循环后边没有冒号
【Python】列表~深入篇的更多相关文章
- python第七篇:Python 列表操作详解
Python列表操作详解 list函数 list() #生成一个空的列表 list(iterable) #用可迭代对象初始化一个列表 列表的 and 运算和 or 运算 列表and运算 > ...
- python 列表解析
列表解析,主要用于动态创建列表 本篇主要说一下,lambda.map().和filter()同列表解析语句之间结合的用法 列表解析的基本语法为:[expr for iter_var in iterab ...
- Python列表生成器
本篇将介绍python生成器,更多内容请参考:python学习指南 前言 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不 ...
- Python 列表(List)操作方法详解
Python 列表(List)操作方法详解 这篇文章主要介绍了Python中列表(List)的详解操作方法,包含创建.访问.更新.删除.其它操作等,需要的朋友可以参考下 列表是Python中最基本 ...
- (转)python 列表与元组的操作简介
python 列表与元组的操作简介 原文:https://www.cnblogs.com/QG-whz/p/4782809.html 阅读目录 列表 list函数 列表的基本操作 列表方法 元组 tu ...
- Python+Selenium练习篇之1-摘取网页上全部邮箱
前面已经介绍了Python+Selenium基础篇,通过前面几篇文章的介绍和练习,Selenium+Python的webUI自动化测试算是入门了.接下来,我计划写第二个系列:练习篇,通过一些练习,了解 ...
- Python人工智能第一篇:语音合成和语音识别
Python人工智能第一篇:语音合成和语音识别 此篇是人工智能应用的重点,只用现成的技术不做底层算法,也是让初级程序员快速进入人工智能行业的捷径.目前市面上主流的AI技术提供公司有很多,比如百度, ...
- 第六篇:Python函数进阶篇
在了解完了 Python函数基础篇之后,本篇的存在其实是为了整合知识,由于该篇的知识是否杂乱,故大家可以通过点开点连接直接进入其详细介绍,该篇主要大致的介绍一下几个知识点: 一.Python的迭代器 ...
- 《python开发技术详解》|百度网盘免费下载|Python开发入门篇
<python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby 内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...
- python 列表排序
转自http://www.iplaypython.com/jinjie/jj114.html reverse()方法 将列表中元素反转排序,比如下面这样>>> x = [1,5,2, ...
随机推荐
- 论文笔记(一)Re-ranking by Multi-feature Fusion with Diffusion for Image Retrieval
0x00 预备知识 $\DeclareMathOperator{\vol}{vol}$ 无向图上的随机游走 无向图 $G=(V,E)$,边权函数 $w\colon V\times V \to R_+$ ...
- HDU 5687 Problem C(Trie+坑)
Problem C Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Tota ...
- AutoDispose代替RxLifecycle优雅的解决RxJava内存泄漏问题
使用过Rxjava的小伙伴都知道,在使用RxJava时如果处理不当,很可能会产生内存泄漏的问题. 我们使用rxjava最大的原因是响应式编程使我们的异步操作代码变得很优雅,在Android中,也使线程 ...
- 荔枝丹(litchi)
荔枝丹(litchi) 题目描述 绛雪艳浮红锦烂,玉壶光莹水晶寒. 高名已许传新曲,芳味曾经荐大官. 乌府日长霜署静,几株斜覆石栏杆. --明·陈辉<荔枝> 荔枝(丹),拼音为lizhid ...
- 关于5Gwifi
但目前全球最快的WiFi传输速度仅为300Mbps(少数可以达到600Mbps),相当于每秒只能传输约36MB的内容.在人们只利用它来看网站.处理邮件的年代,这没什么问题.但到了今天,面对越来越复杂的 ...
- 关于ofbiz13.07和ofbiz14.12部署的问题解决方法
必备软件 Jdk7 文件名:java_ee_sdk-6u4-jdk7-windows.exe eclipse MySQL Installer 5.6 for Windows MySql Connect ...
- quartz的配置
Quartz.Net中的概念:计划者(IScheduler).工作(IJob).触发器(Trigger).给计划者一个工作,让他在Trigger(什么条件下做这件事)触发的条件下执行这个工作 将要定时 ...
- MVP MVVM MVC
上一篇得到大家的关注,非常感谢.由于自己对于这些模式的理解也是有限,对于MVC,MVP,MVVM这些模式的比较,是结合自己的理解,一些地方不一定准确,需要的朋友可以参考下 上一篇得到大家的关注,非常感 ...
- linux中的strip命令简介------给文件脱衣服【转】
转自:http://blog.csdn.net/stpeace/article/details/47090255 版权声明:本文为博主原创文章,转载时请务必注明本文地址, 禁止用于任何商业用途, 否则 ...
- Syslinux使用
1. 介绍 Syslinux是一个功能强大的引导加载程序, 可以装在U盘上来引导系统 在5.00版本以前,几乎所有c32模块是独立的,即没有其他模块依赖:但在5.00以后,很多c32模块则是依赖于其他 ...