当前位置: 首页 > news >正文

Python基础--序列操作/函数

Python基础

1.序列的操作

2.函数

1. 数据类型的具体操作

1.1  序列操作--列表具体操作:

#定义列表

listA = [] #定义一个空列表          listB = [1,2.8,"你好",listA,[1,2,3]]
# 访问列表
print(listB)#查看整个列表           print(listB[2])#查看单个元素(通过下表索引,索引从0开始)


# 增删改操作
# 增加
# 1.append()直接添加到列表最后一位:listB.append(666)
# 2.insert()指定位置新增元素:listB.insert(2,"p")
# 删除
# 1.remove()删除某个元素,如果元素重复,默认删除第一个:listB.remove(1)
# 2.del根据下表删除某个元素:del listB[4]
  __delitem__()通过下标删除元素:listB.__delitem__(2)


#修改
# 通过下标直接修改(直接用等号赋值):listB[0] = 100


# 列表的运算符操作
# 1.+和*的使用:+实现列表的合并,*实现列表元素的重复

   


# 2.比较运算符都可使用:实现列表内部元素的比较,从第0个元素开始,按照数值的大小或者ASCII表的顺序实现比较


# 3.地址比较:is和is not,实现列表内存地址的比较(不常用)

    


# 4.成员比较:in和not in,实现列表是否包含某个元素的判断


# 5.自运算符操作:+=,*=

列表的切片 对列表进行截取、反转

list[-1]:返回列表最后一个

list[a:b:c]:a代表start(默认为0),b代表stop(默认为1),c代表step

         list[:1]== list[0:1:1]:返回列表第0到1的元素[0,1)左闭右开

         list[1:]:返回第二个至最后一个元素(包含最后一位元素)

         list[-1:]:返回最后一个元素

         list[:-1]:返回第一个至倒数第二个元素

         list[::1]:从头到尾,步长为1(返回原列表)

         list[::-1]:返回原列表的倒序

         list[::2]:返回从左往右,步长为2,进行切片

遍历列表:通过元素值遍历或通过元素下标遍历

    

列表的转换:tuple(),set()list()将列表转换为元组或集合或列表

列表的常用函数:

clear()清除列表中所有元素(原列表任存在)

count()统计某个元素在列表中出现的次数

max()最大值,min()最小值,sort()默认升序排列

拷贝:浅拷贝 copy()只适用于一维数组list2 = list1.copy() ,深拷贝 先import copy再拷贝list2 = copy.deepcopy(list1)(深拷贝内存地址不同)

1.2  序列操作—元组具体操作:

(1)定义元组:tupleA = ()#定义一个空元组

(2)元组切片:同列表切片操作

(3)重复*,拼接+

(4)成员判断in,not in

(5)遍历:同列表遍历

枚举遍历:    

压缩遍历:

1.3  序列操作—字典具体操作:

(1)定义字典:dictA= {} #定义一个空字典

(2)特殊的元组或列表转字典

 

(3)修改

(4)获取元素,获取或遍历key和value

  

(5)删除元素(删除key)

pop

 

del (通过key删除)                  del删除字典后,无此字典

 

clear()清空字典,字典仍存在

1.4  序列操作—集合具体操作:

(1)定义一个集合:

(2)差集-:去除两者重复的,留下自己独有的

并集|:去除多余的重复值

交集&   

对称差集^:两个集合不同时存在的元素(去除共有的元素) 

(3)集合遍历

2.函数

2.1  内置函数(Python中写好的函数,可直接调用)

常见的有:abs()返回数字的绝对值,pow(x,y)返回的是x的y次方

2.2  自定义函数

(1)定义函数:def 函数名(参数):

'''注释内容'''

方法体  

[return返回值,可写可不写]

2.3  调用函数:函数名(参数)

2.4  参数:分为无参函数

有参函数:分为位置参数,默认参数,命名关键字参数,可变参数,关键字可变参数

(1)位置参数:必须要传入的参数,传入的参数也必须按照函数定义是的顺序,参数名 = 参数值

(2)默认参数:给参数一个默认值,调用函数时可传可不传参数,不传参数就为使用默认值(如果默认参数和未知参数同时存在,则位置参数在前,参数默认值必须是不可变类型)

(3)命名关键字参数:参数之间有*,在*往后面的参数,在调用时必须写成(参数名=参数值)

固定位置:位置参数;命名关键字参数;默认参数

(4)可变参数:参数之前加*,可理解为将收集到的位置参数打包成元组,调用函数时可以传入多个元素,看成是元组的拆包

(5)关键字可变参数:**kwargs,将收集到的所有命名关键字参数打包成字典,调用函数时可以传多个字典,看成字典的拆包

   

2.5  返回值(return)

(1)在需要返回的地方使用return关键字,可以返回任意类型的数值和表达式,return会终止函数的执行

(2)函数中可以存在多个return语句,表示在不同条件下终止函数并返回对应的数值

(3)return非必须存在,无return仅表示函数无返回值,不影响函数的调用和运行

2.6  匿名函数lambda-lambda表达式:如果函数定义比较简单,并且只有单个参数时可以使用lambda表达式表达函数

lambda 参数1,参数2:返回值表达式

相关文章:

Python基础--序列操作/函数

Python基础 1.序列的操作 2.函数 1. 数据类型的具体操作 1.1 序列操作--列表具体操作: #定义列表 listA [] #定义一个空列表 listB [1,2.8,"你好",listA,[1,2,3]] # 访问列表 print(listB)#查看整个列表 print(listB[2])#查看单个…...

Kafka与Zookeeper版本对应关系

文章目录 了解版本对应Kafka安装包Kafka源码包 了解 比如: kafka_2.11-1.1.1.jar包 其中2.11表示的是Scala的版本,因为Kafka服务器端代码完全由Scala语音编写。”-“后面的1.1.1表示的kafka的版本信息。遵循一个基本原则,Kafka客户端版本和服…...

Arch Linux 使用桥接模式上网

如果我们想要将虚拟机与物理主机同一网段,并且像物理机器一样被其他设备访问,则需要以桥接模式上网,这个时候,物理主机就必须配置为使用网桥上网了。 注意:这里我们使用了 NetworkManager 网络管理工具中的 nmcli 来进…...

Vue 中使用 WebWorker

目录 安装 loader 应用场景 打包时错误处理 安装 loader npm install worker-loader -D 如果直接把worker.js放到public目录下,则不需要安装loader vue.config.js const { defineConfig } require(vue/cli-service)module.exports defineConfig({transpileDe…...

财务管理系统javaweb会计账房进销存jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 财务管理系统javaweb java,Struts2,bootstrap,mysql,…...

企业服务器被devos勒索病毒攻击后怎么处理,devos勒索病毒如何攻击的

众所周知,科学技术是第一生产力,科学技术的发展给企业与人们的生活带来了极大变化,但随之而来的网络安全威胁也不断增加。最近,我们收到很多企业的求助,企业的计算机服务器遭到了devos勒索病毒的攻击,导致企…...

React源码解析18(2)------ FilberNode,FilberRootNode结构关系

摘要 在上一篇,我们实现了通过JSX转换为ReactElement的方法,也看到了转换后React元素的结构。但是这个React元素,并不能很清楚的表达组件之间的关系,以及属性的处理。 所以在React内部,会将所有的React元素转换为Fil…...

什么是Session?它在SQLAlchemy中扮演什么角色?

让我们先来谈谈什么是“Session”。在你逛超市或者餐厅的时候,你可能会遇到一种叫做“前台”的东西。你知道那是干什么的吗?它是用来暂存你买的东西,这样你就可以从容地结账,而不必抱着满满一购物车的商品。 数据库的“Session”…...

Java 中 Set集合常用方法

.add() 添加元素 对象名.add() 向Set集合中添加元素 &#xff08;但不能添加重复元素&#xff0c;Set集合中不允许元素重复&#xff09; Set<String> s new HashSet<String>(); // 添加数据 s.add("aaa"); s.add("bbb"); addAll(Collectio…...

(MVC)SpringBoot+Mybatis+Mapper.xml

前言&#xff1a;本篇博客主要对MVC架构、Mybatis工程加深下理解&#xff0c;前面写过一篇博客&#xff1a;SprintBoothtml/css/jsmybatis的demo&#xff0c;里面涉及到了Mybatis的应用&#xff0c;此篇博客主要介绍一种将sql语句写到了配置文件里的方法&#xff0c;即Mybatis里…...

【Linux命令行与Shell脚本编程】第十九章 正则表达式

Linux命令行与Shell脚本编程 第十九章 正则表达式 文章目录 Linux命令行与Shell脚本编程 第十九章 正则表达式九.正则表达式9.1.正则表达式基础9.1.1.正则表达式的类型9.2.定义BRE模式9.2.1.普通文本9.2.2.特殊字符 9.2.3.锚点字符锚定行首^锚定行尾$组合锚点 9.2.4.点号字符\.…...

vue exceljs 实现导出excel并设置网格线、背景色、 垂直居中、分页打印

一、 下载 exceljs pnpm install exceljs二、 页面中使用 // 导出 exportExcelexportToExcel() {this.$confirm("此操作将导出excel文件, 是否继续?", "提示", {confirmButtonText: "确定",cancelButtonText: "取消",type: "wa…...

TC358774/5显示桥接(MIPI DSI到LVDS)

东芝TC358774/5显示桥针对使用带有MIPI DSI(显示串行接口)连接的主机处理器的手持设备进行了优化。tc358774 /5作为协议桥接&#xff0c;使视频数据流从主机处理器链接到驱动LVDS显示面板。tc358774 /5桥接器可以配置为多达4通道MIPI DSI&#xff0c;每通道数据速率高达1 Gbps&…...

企业内部FAQ常见问题展示分享的价值

企业内部FAQ&#xff08;常见问题&#xff09;展示分享是一种将常见问题和解决方案以问答形式呈现给员工的方式。这种方式可以帮助企业提高工作效率、提供一致的解决方案、提升员工满意度和减少重复工作。 企业内部FAQ常见问题展示分享的价值&#xff1a; 1. 提高工作效率 企…...

React 核心开发者 Dan Abramov 宣布从 Meta 离职

导读React.js 核心开发者、Redux 作者 Dan Abramov 在社交平台发文宣布&#xff0c;将辞去在 Meta 的职务&#xff1a; “我感到苦乐参半&#xff0c;几周后我就要辞去 Meta 的工作了。在 Meta 的 React 组织工作是我的荣幸。感谢我过去和现在的同事接纳我&#xff0c;容忍我犯…...

【C/C++】std::vector 优化点(官方同步)

预分配空间&#xff1a;使用 reserve() 方法预分配 vector 的空间&#xff0c;避免频繁的内存分配和拷贝操作。 使用 emplace_back()&#xff1a;使用 emplace_back() 方法插入元素&#xff0c;避免了拷贝构造函数的调用&#xff0c;提高了插入效率。 使用移动语义&#xff1…...

【vue3】elementPlus主题色定制

以scss语言为例 1、element-plus自动按需导入配置&#xff0c;可参考官网按需导入模块 安装element-plus及辅助插件 npm i element-plus --save安装辅助插件 npm install -D unplugin-vue-components unplugin-auto-import安装sass npm i sass -D2、vite.config.js 中配置…...

MATLAB 2023a的机器学习、深度学习

MATLAB 2023版的深度学习工具箱&#xff0c;提供了完整的工具链&#xff0c;使您能够在一个集成的环境中进行深度学习的建模、训练和部署。与Python相比&#xff0c;MATLAB的语法简洁、易于上手&#xff0c;无需繁琐的配置和安装&#xff0c;让您能够更快地实现深度学习的任务。…...

【Python实际使用】Python提取pdf中的表格数据输出到excel(含代码实例)

前两天有朋友问我&#xff0c;你能不能帮我把pdf中的表格数据抓出来&#xff0c;输出到excel中&#xff0c;我说我试试。 最近看资料发现python有很多库都可以完成pdf中的表格数据抓取&#xff0c;选择其中一种尝试&#xff1a;pdfplumber。 一、简单介绍 在使用之前我们简单…...

css的transform样式计算-第一节

本文作者为 360 奇舞团前端开发工程师 引言 在使用 css 样式进行样式的缩放、旋转等设置时&#xff0c;思考了一下它的较浅层的原理&#xff0c;恩&#xff0c;这个阶段都 是一些初高的数学计算&#xff0c;从新看这里的时候顺便捡了捡初高中的数学&#xff0c;比如三角函数之类…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据&#xff0c;减少数据库查询操作。 缓存逻辑分析&#xff1a; ①每个分类下的菜品保持一份缓存数据…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例&#xff0c;模拟20个网页的爬取&#xff0c;每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程&#xff1a;允许程序同时执行多个任务&#xff0c;提高IO密集型任务&#xff08;如网络请求&#xff09;的效率…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)

引言 工欲善其事&#xff0c;必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后&#xff0c;我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集&#xff0c;就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...