Python学堂,手把手教你学会-第02课-列表+字典
liuian 2024-11-28 00:44 47 浏览
列表+字典
Python基础课 列表+字典 一、列表
列表是按照特定顺序的排列组合,就像数学中的数列,列表中的元素具有一定的排列顺 序。
在Python中,列表用方括号[ ]来表示列表,比如:
>>>a= ['Python','C','Java'] 1、访问列表中的元素
索引开始:0
如果我们想要打印上述列表中的Python,就需要我们访问列表中的第一个元素。在Python 中,列表的访问从0开始,索引数为元素的位置减去1,访问的元素位置放在方括号里面,如 果我们想要访问第一个元素Python,则索引为0,即:
或者,在pyt hon中也可以逆序访问,从后往前索引依次是-1 -2 ...,比如
修改列表元素
在刚刚的列表中,如果我想把列表a中的第三个元素Java修改为R,则可以采用如下的命令:
直接用赋值的命令(=)来修改列表中的元素,修改后,再试着打印原来的列表,看有没有修改 成功。
在列表中添加元素:append( ) insert( )
在列表末尾添加元素 在刚刚的列表末尾添加元素Ruby,使用方法append( )
在列表中添加元素 如果想把元素Ruby添加到Python后面,则需要使用方法insert( )。
从列表中删除元素 : del语句 , remove( ) , pop( ) 知道元素的位置,删除某个特定位置的元素用del语句
不知道元素的位置,但是知道要删除什么元素,使用方法remove( )
如果想删除这个值并且继续使用它,可以使用方法pop( ),方法pop( )可以将原有列表中特定 元素删除,并且可以将之赋值给新的变量。
2、组织列表
组织列表:方法sort( ) , 函数sorted( ) , 方法reverse( ) 列表的永久性排序sort( )
使用方法sort( ) 可以对列表进行永久性排序
列表的临时排序sorted( )
使用函数sorted( ) 可以对列表进行临时性排序
倒着打印列表
要倒着打印列表,可以用方法reverse( ),方法reverse永久性的修改了排列的元素
确定列表的长度
可以用函数len( ) 确定列表的长度
使用列表时避免索引错误
常见的索引错误包括:
1、忘记索引数是元素位置减去1 2、超出访问的列表索引 3、列表为空列表时,倒着访问列表a[-1]错误
注:当发生索引错误时,可以将列表长度打印出来观察是什么错误 3、操作列表——创建数值列表
使用range( )创建数字列表
可以使用函数range( ) 和函数list( ) 创建数字列表;
函数range( ) 可以生成一系列的数字,里面第一个参数是起始值,第二个参数表示不超过这个 值的终止值,第三个参数表示步长,默认为1;
函数list( ) 可以将里面的参数转换为列表。
对数字列表进行简单的统计计算 可以对数值列表进行简单的统计,例如最大值、最小值、总和。
4、操作列表——使用列表的一部分
切片
切片,相当于把列表其中的一部分切出来。要创建切片,可以指定第一个元素和最后一个元素 的位置,切片到达第二个元素的前一个元素停止切片,类似于函数range( )
复制列表
使用切片的方法来复制列表,会产生两个列表。如果使用赋值(=)的方法来复制列表,第二 个列表仅仅是指向第一个列表,并没有复制。
采用赋值的方法来复制列表
二、字典
字典是 Python 内置的一种数据结构,它便于语义化表达一些结构数据,字典是开发中 常用的一种数据结构
1、字典介绍
1. 字典使用花括号 {} 或 dict 来创建,字典是可以嵌套使用的 2. 字典是成对出现的,字典以键 (key) 值 (value) 对形式体现
3. 键与值之间用冒号 : 分隔,每个键值对之间用逗号 , 分隔开
4. 字典的 key 是唯一的,而 value 可以重复出现
5. 字典的 key 不使用中文或其他字符,这是业内约定俗成的做法
2、创建字典
使用花括号 {} 创建字典
注意:字典每个键值对之间要用逗号 , 分隔开
1 2 3 4 5 6 7
3、字典取值
字典取值有两种方式
1. 方式一
在字典变量后面使用方括号传入字典的 key 进行取值 这种方法有一个弊端:如果字典中不存在 key ,会报 KeyError 错误
2. 方式二
使用字典 get 方法取值
emp = {'name':'张三' , 'age':22 , 'sex':'男'} print(emp)
# 运行结果:{'name':'张三' , 'age':22 , 'sex':'男'} # 字典打印时会将花括号也打印出来
print(type(emp))
# 运行结果:<class 'dict'>
# 从以上打印类型可以看出变量属于 dict 字典类型/3、
如果不存在 key ,返回 None 或自己指定的值,例如 N/A,以下为示例代码
4、字典的操作 新增
列表的新增操作和更新操作基本相同,Python 字典秉承:“有则更新,无则新增” 原则
当字典存在对应的 key 时执行更新,当字典不存在对应的 key 时执行新增 1. 新增操作
2. 批量操作
删除
1. 使用 pop() 方法删除
该方法删除字典给定的键及对应的值 pop() 可返回值,返回值为被删除的值
2. 使用 popitem() 删除字典最后一个 kv popitem() 返回的是一个元组
3. 清空字典 clear()
- 上一篇:Python合集之Python字典(一)
- 下一篇:python之字典与集合
相关推荐
- python入门到脱坑函数—定义函数_如何定义函数python
-
Python函数定义:从入门到精通一、函数的基本概念函数是组织好的、可重复使用的代码块,用于执行特定任务。在Python中,函数可以提高代码的模块性和重复利用率。二、定义函数的基本语法def函数名(...
- javascript函数的call、apply和bind的原理及作用详解
-
javascript函数的call、apply和bind本质是用来实现继承的,专业点说法就是改变函数体内部this的指向,当一个对象没有某个功能时,就可以用这3个来从有相关功能的对象里借用过来...
- JS中 call()、apply()、bind() 的用法
-
其实是一个很简单的东西,认真看十分钟就从一脸懵B到完全理解!先看明白下面:例1obj.objAge;//17obj.myFun()//小张年龄undefined例2shows(...
- Pandas每日函数学习之apply函数_apply函数python
-
apply函数是Pandas中的一个非常强大的工具,它允许你对DataFrame或Series中的数据应用一个函数,可以是自定义的函数,也可以是内置的函数。apply可以作用于DataF...
- Win10搜索不习惯 换个设定就好了_window10搜索用不了怎么办
-
Windows10的搜索功能是真的方便,这点用惯了Windows10的小伙伴应该都知道,不过它有个小问题,就是Windows10虽然会自动联网搜索,但默认使用微软自家的Bing搜索引擎和Edge...
- 面试秘籍:call、bind、apply的区别,面试官为什么总爱问这三位?
-
引言你有没有发现,每次JavaScript面试,面试官总爱问你call、bind和apply的区别?好像这三个方法成了通关密码,掌握了它们,就能顺利过关。其实不难理解,面试官问这些问题,不...
- 记住这8招,帮你掌握“追拍“摄影技法—摄影早自习第422日
-
杨海英同学提问:请问叶梓老师,我练习追拍时,总也不能把运动的人物拍清晰,速度一般掌握在1/40-1/60,请问您如何把追拍拍的清晰?这跟不同的运动形式有关系吗?请您给讲讲要点,谢谢您!摄影:Damia...
- [Sony] 有点残酷的测试A7RII PK FS7
-
都是好机!手中利器!主要是最近天天研究fs5,想知道fs5与a7rii后期匹配问题,苦等朋友的fs5月底到货,于是先拿手里现有的fs7小测一下,十九八九也能看到fs5的影子,另外也了解一下fs5k标配...
- AndroidStudio_Android使用OkHttp发起Http请求
-
这个okHttp的使用,其实网络上有很多的案例的,但是,如果以前没用过,copy别人的直接用的话,可以发现要么导包导不进来,要么,人家给的代码也不完整,这里自己整理一下.1.引入OkHttp的jar...
- ESL-通过事件控制FreeSWITCH_es事务控制
-
通过事件提供的最底层控制机制,允许我们有效地利用工具箱,适时选择使用其中的单个工具。FreeSWITCH是一个核心交换与混合矩阵,它周围有几十个模块提供各种功能特性。我们完全控制了所有的即时信息,这些...
- 【调试】perf和火焰图_perf生成火焰图
-
简介perf是linux上的性能分析工具,perf可以对event进行统计得到event的发生次数,或者对event进行采样,得到每次event发生时的相关数据(cpu、进程id、运行栈等),利用这些...
- 文本检索控件也玩安卓?dtSearch Engine发布Android测试版
-
dtSearchEngineforLinux(原生64-bit/32-bitC++和JavaAPIs)和dtSearchEngineforWin&.NET(原生64-bi...
- 网站后台莫名增加N个管理员,记一次SQL注入攻击
-
网站没流量,但却经常被SQL注入光顾。最近,网站真的很奇怪,网站后台不光莫名多了很多“管理员”,所有的Wordpres插件还会被自动暂停,导致一些插件支持的页面,如WooCommerce无法正常访问、...
- 多元回归树分析Multivariate Regression Trees,MRT
-
多元回归树(MultivariateRegressionTrees,MRT)是单元回归树的拓展,是一种对一系列连续型变量递归划分成多个类群的聚类方法,是在决策树(decision-trees)基础...
- JMETER性能测试_JMETER性能测试指标
-
jmeter为性能测试提供了一下特色:jmeter可以对测试静态资源(例如js、html等)以及动态资源(例如php、jsp、ajax等等)进行性能测试jmeter可以挖掘出系统最大能处...
- 一周热门
-
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Python实现人事自动打卡,再也不会被批评
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
飞牛OS入门安装遇到问题,如何解决?
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
- 最近发表
-
- python入门到脱坑函数—定义函数_如何定义函数python
- javascript函数的call、apply和bind的原理及作用详解
- JS中 call()、apply()、bind() 的用法
- Pandas每日函数学习之apply函数_apply函数python
- Win10搜索不习惯 换个设定就好了_window10搜索用不了怎么办
- 面试秘籍:call、bind、apply的区别,面试官为什么总爱问这三位?
- 记住这8招,帮你掌握“追拍“摄影技法—摄影早自习第422日
- [Sony] 有点残酷的测试A7RII PK FS7
- AndroidStudio_Android使用OkHttp发起Http请求
- ESL-通过事件控制FreeSWITCH_es事务控制
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)