python课本学习-第五章
一、列表的概念
1、列表的创建
- 列表是由一组任意类型的值组合而成的序列,组成列表的值称为元素,每个元素之间用逗号隔开。
- 列表中的元素是可变的
#列表类似于c++中的数组,数组下标从0开始
list1 = [a, b, c]
list2 = [a,]
#通过list()函数创建列表
list1 = list("opq")
output:['o','p','q']
- range()函数
- range(start,end):返回一系列整数,从start开始,到end-1结束,相邻整数相差1
- range(end):(0,end-1)
- range(start,end, step):返回一系列整数,相邻两个整数相差step,结束整数不超过end-1
2、列表的索引和切片
- 列表的索引
- 列表的切片
列表的切片类似于字符串的切片,列表的切片可以从列表中取得多个元素并组成一个新列表
list1 = list(["opq"])
print(list1(1,1,1))
#原列表中不会发生任何变化
3、列表的遍历
- while+len()函数
- for
list = ['o','p','q']
for value in list:
print(list)
二、列表的运算
- 相关运算符
list1 = ['o','p','q']
n1, n2 = list1[0:]
n3, n4 = list1
print(n1, n2, n3, n4)
output:/o p q/
三、列表的常用操作
1、修改元素
#修改就像c++数组一样,直接赋值就可以
list1 = ['o','p','q']
list2 = [1, 2, 3]
list1[1:] = list2[0:2]
print(list1)
output:/'o', 1, 2/
2、添加元素
#append(obj):在列表末尾添加元素obj
#extend(seq):在列表末尾一次性添加另一个序列seq中的多个元素
#insert(index,obj):将元素obj插入列表的index处
eg:list1.append('i')
3、删除元素
#pop(index=-1):删除列表中index处的元素(默认index=-1),并返回该元素的值
#remove(obj):删除列表第一次出现的obj元素
#clear():删除列表中的所有元素
4、查找元素位置
- index():返回从列表中查找出某个元素第一次出现的位置
eg:index(查找元素,start = 0, end = -1)
5、元素排序
- reverse()函数:反转列表中的元素
list1.reverse()
- sort函数
list1.sort()
list1.sort(reverse() = True)
6、统计元素个数
list1.count('q')
四、列表推导
#列表推导语法格式:[表达式1 for 变量k in 列表L if 表达式2]
#或者:
#list1 = []
#for k in 列表L:
# if 表达式2:
# list.append(表达式1)
list = range(1, 11)
newlist = [num**2 for num in list (if num > 5)]
print(newlist)#list中的元素的平方
五、元组
1、元组的创建
- 元组类似于列表,也是一种序列,元组中的元素不能被改变,列表使用小括号
- 创建元组
# 元组创建只需要将元素用逗号隔开
t1 = 5, 1, 2
# 元组创建也可以使用小括号
t1 = (5, 1, 2)
# 创建空元组
t1 = ()
# 元组中只有一个元素,一定要在元素后加一个逗号
t1 = (1,)
2、元组的索引
- 两种索引方式
- 下标索引:不能修改元组的值
- 切片索引
- 引入元组的必要性
- 元组速度比列表快
- 元组对需要修改的数据进行写保护,数据安全性高
- 一些元组可以用作字典键
3、元组的遍历
- for
4、元组的计算:与列表类似
5、元组与列表的转换:
-list():将元组转换为列表
-tuple():将列表转换为元组
python课本学习-第五章的更多相关文章
- Python爬虫学习==>第五章:爬虫常用库的安装
学习目的: 爬虫有请求库(request.selenium).解析库.存储库(MongoDB.Redis).工具库,此节学习安装常用库的安装 正式步骤 Step1:urllib和re库 这两个库在安装 ...
- 进击的Python【第十五章】:Web前端基础之DOM
进击的Python[第十五章]:Web前端基础之DOM 简介:文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口.它给文档提供了一种结构化的表示 ...
- python 教程 第十五章、 结构布局
第十五章. 结构布局 #!/usr/bin/env python #(1)起始行 "this is a module" #(2)模块文档 import sys #(3)模块导入 d ...
- Java基础知识二次学习--第五章 数组
第五章 数组 时间:2017年4月26日15:11:30~2017年4月26日15:15:54 章节:05章_01节 视频长度:09:30 内容:一维数组的内存分析 心得: Java中数组是引用类型 ...
- 2018-06-21 中文代码示例视频演示Python入门教程第五章 数据结构
知乎原链 续前作: 中文代码示例视频演示Python入门教程第四章 控制流 对应在线文档: 5. Data Structures 这一章起初还是采取了尽量与原例程相近的汉化方式, 但有些语义较偏(如T ...
- C#高级编程 (第六版) 学习 第五章:数组
第五章 数组 1,简单数组 声明:int[] myArray; 初始化:myArray = new int[4]; 为数组分配内存. 还可以用如下的方法: int[] myArray = new in ...
- python dlib学习(五):比对人脸
前言在前面的博客中介绍了,如何使用dlib标定人脸(python dlib学习(一):人脸检测),提取68个特征点(python dlib学习(二):人脸特征点标定).这次要在这两个工作的基础之上,将 ...
- python学习第五章
1.继承 即是一个派生的类(derived class)继承基类(base class)的字段和方法,继承也允许把一个 派生类的对象作为 一个基类 对象对待.通俗来讲就是方便,继承前人的代码,减少工作 ...
- 深度学习框架PyTorch一书的学习-第五章-常用工具模块
https://github.com/chenyuntc/pytorch-book/blob/v1.0/chapter5-常用工具/chapter5.ipynb 希望大家直接到上面的网址去查看代码,下 ...
- 【3】python核心编程 第五章-数字
1.用大写字母 “L”表示长整数 尽管 Python 也支持用小写字母 L 标记的长整型,但是我们郑重推荐您仅使用大写的 “L”, 这样能有效避免数字1 和小写L 的混淆.Python 在显示长整数类 ...
随机推荐
- [转帖]Sqlserver数据库中char、varchar、nchar、nvarchar的区别及查询表结构
https://www.cnblogs.com/liuqifeng/p/10405121.html varchar 和 nvarchar区别: varchar(n)长度为 n 个字节的可变长度且非 U ...
- MongoDB的安装使用与监控
MongoDB的安装使用与监控 下载 https://www.mongodb.com/try/download/community 我这边习惯于下载 Windows 的 MSI 进行安装 Linux ...
- [转帖]influxdb 2.0.3 tar.gz的安装与配置
下载地址:https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.3_linux_amd64.tar.gz 安装influxdb ### 解 ...
- Docker 安装Oracle12c的镜像修改字符集 并且进行启动的简单过程
学习来自 昨天晚上转帖的文章 这里面添加一些自己的内容 首先获取配置文件 git clone https://github.com/oracle/docker-images.git 获取之后比较容易了 ...
- 无法下载安装文件,请检查internet连接
win10 vs2019下提示visual studio installer无法下载安装文件,请检查internet连接 1.打开"网络和Internet设置",更改适配器 ...
- SqlSugar分表
一.使用场景 (1)可扩展架构设计,比如一个ERP用5年不卡,到了10就卡了因为数据太多了,这个时候很多人都是备份然后清空数据 (2) 数据量太多 ,例如每天都有 几十上百万的数据进入库,如果不分表后 ...
- 应对数据爆炸时代,揭秘向量数据库如何成为AI开发者的新宠,各数据库差异对比
应对数据爆炸时代,揭秘向量数据库如何成为AI开发者的新宠,各数据库差异对比 随着大模型的爆火,向量数据库也越发成为开发者关注的焦点.为了方便大家更好地了解向量数据库,我们特地推出了<Hello, ...
- vue-router.esm.js:2065 Uncaught (in promise) Error: Redirected when going from "/login?redirect=%2Fhome" to "/home" via a navigation guard.
原因: vue-router路由版本更新产生的问题,导致路由跳转失败抛出该错误; 真正的原因是由于返回了一个Promise对象, 正常的跳转由then方法执行 当正常的路由跳转, 被"路 ...
- 从零开始教你手动搭建幻兽帕鲁私服( CentOS 版)
哈喽大家好,我是咸鱼. 想必上网冲浪的小伙伴最近都被<幻兽帕鲁>这款游戏刷屏了. (文中图片均来自网络,侵删) 幻兽帕鲁是 Pocketpair 打造的一款开放世界的生存建造游戏.在游戏中 ...
- 【C语言进阶】【小项目】实现一个通讯录【C语言知识点汇总项目】通过这个项目,掌握C语言重要知识点
[C语言进阶][小项目]实现一个通讯录[C语言知识点汇总项目]通过这个项目,掌握C语言重要知识点 欢迎来到#西城s的博客,今天,博主带着大家用C实现一个通讯录!干货满满不要错过噢! 作者: #西城s ...