Python——列表

一、列表的特性介绍

  •         列表和字符串⼀样也是序列类型的数据
  •         列表内的元素直接⽤英⽂的逗号隔开,元素是可变的,所以列表是可变的数据类型,⽽字符串不是。
  •         列表的元素可以是 Python 中的任何类型的数据对象。如:字符串、列表、元组、字典、集合、函数
  •         列表中的具有相同值的元素允许出现多次。[1, 2, 1, 1, 1, 1, 3, 3, 2]

二、创建列表 

#list() 从其他类型转换
In [8]: list('hello')
Out[8]: ['h', 'e', 'l', 'l', 'o']

#从字符串转换 split()
In [9]: 'www.liang.com'.split('.')
Out[9]: ['www', 'liang', 'com']

 

三、嵌套的列表 

        列表中可包含 python 中任何类型的元素(对象),当然也可以包括⼀个或多个列表

In [23]: l3 = [['one','two','three'],[1,2,3]]

四、列表的基本操作 

        1.取值

In [11]: le = ['insert','append','remove','pop','sort']

In [12]: le[0]
Out[12]: 'insert'

In [13]: le[-1]
Out[13]: 'sort'

        2.嵌套的列表取值 

In [23]: l3 = [['one','two','three'],[1,2,3]]

In [24]: l3[0]
Out[24]: ['one', 'two', 'three']

In [25]: l4 = l3[0]

In [26]: l4
Out[26]: ['one', 'two', 'three']

In [27]: l4[1]
Out[27]: 'two'

In [28]: l3[0][1]
Out[28]: 'two'

In [29]: l3[1][1]
Out[29]: 2

        3.就地修改 

In [32]: li = ['liang',1314,'521']

In [33]: li[0] = '亮'

In [34]: li
Out[34]: ['亮', 1314, '521']

 

        4.切⽚ 

In [35]: line = 'Size: 8192 MB\n'

In [36]: line[:-1]
Out[36]: 'Size: 8192 MB'

In [37]: line[:-1].split(": ")
Out[37]: ['Size', '8192 MB']

In [38]: line
Out[38]: 'Size: 8192 MB\n'

In [39]: line.split(": ")
Out[39]: ['Size', '8192 MB\n']

In [40]: line[:-1].split(": ")
Out[40]: ['Size', '8192 MB']

In [41]: a,b = ['Size', '8192 MB']

In [42]: a
Out[42]: 'Size'

In [43]: b
Out[43]: '8192 MB'

In [44]: a,b = line[:-1].split(": ")

In [45]: a
Out[45]: 'Size'

In [46]: b
Out[46]: '8192 MB'

In [47]: line.split(": ")
Out[47]: ['Size', '8192 MB\n']

In [48]: a,b = line.split(": ")

In [49]: a
Out[49]: 'Size'

In [50]: b
Out[50]: '8192 MB\n'

In [51]: b = b[-1]

In [52]: b
Out[52]: '\n'

In [53]: a
Out[53]: 'Size'

In [54]: b
Out[54]: '\n'

In [55]: a,b = line.split(": ")

In [56]: a
Out[56]: 'Size'

In [57]: b
Out[57]: '8192 MB\n'

In [58]: b = b[:-1]

In [59]: b
Out[59]: '8192 MB'

In [60]: line
Out[60]: 'Size: 8192 MB\n'

In [61]: line.split('\n')
Out[61]: ['Size: 8192 MB', '']

In [62]: line.split('\n')[:-1]
Out[62]: ['Size: 8192 MB']

 

 

        5.必会⽅法 

                len()⽅法是⼀个内置函数,可以统计序列类型的数据结构的⻓度。

In [64]: li = ['liang',1314,'521']

In [65]: len(li)
Out[65]: 3

                in判断元素是否存在于列表中。

In [66]: '521' in li
Out[66]: True

In [67]: 521 in li
Out[67]: False

In [68]: 1314 in li
Out[68]: True

In [69]: if 'liang' in li:
    ...:     print('ok')
    ...: 
ok

In [70]: 

                append() 向列表的最后位置,添加⼀个元素,只接收⼀个参数。

In [70]: li.append(521)

In [71]: li
Out[71]: ['liang', 1314, '521', 521]

                insert() 向原列表的指定位置插⼊⼀个元素,接收两个参数,第⼀个是索引号,第⼆个是要插⼊的元素。

In [72]: li.insert(0,521)

In [73]: li
Out[73]: [521, 'liang', 1314, '521', 521]

                remove() 移除列表中某个指定的元素,没有返回值,并且假如有多个相同值的元素存在,每次只会移除排在最前⾯的那个元素。

In [74]: li.remove(521)

In [75]: li
Out[75]: ['liang', 1314, '521', 521]

                pop()从原列表中删除⼀个元素,并且把这个元素返回。 接收零个或⼀个参数,参数是偏移量,int 类型。

# 删除列表中的最后⼀个元素
In [76]: li.pop()
Out[76]: 521

# 删除列表中的最后⼀个元素,并且返回这个元素,⽤变量
名'v' 接收。
In [77]: v = li.pop()

In [78]: v
Out[78]: '521'

In [79]: li
Out[79]: ['liang', 1314]

# 删除列表中第1个索引号对应的元素
In [80]: li.pop(1)
Out[80]: 1314

In [81]: li
Out[81]: ['liang']

 

 

五、循环列表 

        1.for 循环语法

for 变量 in 可迭代对象:
    循环体的代码,必须缩进 4 个空格
    多⾏代码缩进要⼀致

        可迭代对象 可以理解为可以被 for 循环的数据。 ⽐如: 字符串、列表、元组、⽂件对象(后⾯讲)等。

        2.for 循环列表中的元素

In [83]: li = ['liang',1314,'521','ll']

In [84]: for i in li:
    ...:     print(i)
    ...: 
#结果
liang
1314
521
ll

In [85]: 

 

 

 

 

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/393718.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2011-2021年商业银行财务指标面板数据

2011-2021年商业银行财务指标面板数据 1、时间:2011-2021年 2、来源:银行年报 3、指标:银行代码、银行中文简称、银行中文全称、银行英文全称、国家代码、银行性质、会计期间、会计年度、资产总计、净资产、负债总计、营业收入、营业利润、…

【C++】C++入门—初识构造函数 , 析构函数,拷贝构造函数,赋值运算符重载

C入门 六个默认成员函数1 构造函数语法特性 2 析构函数语法特性 3 拷贝构造函数特性 4 赋值运算符重载运算符重载赋值运算符重载特例:前置 与 后置前置:返回1之后的结果后置: Thanks♪(・ω・)ノ谢谢阅读&…

NNLM - 神经网络语言模型 | 高效的单词预测工具

本系列将持续更新NLP相关模型与方法,欢迎关注! 简介 神经网络语言模型(NNLM)是一种人工智能模型,用于学习预测词序列中下一个词的概率分布。它是自然语言处理(NLP)中的一个强大工具,…

DNS及相关实验

一、DNS DNS的定义:(domain name server)名字解析,又叫名称解析协议,传输协议TCP(端口号:53)和UDP(端口号:53) 解释: tcp:…

程序员也需要休息:为什么有时候他们不喜欢关电脑

程序员为什么不喜欢关电脑? 背景:作为程序员,长时间与电脑为伴是家常便饭。然而,有时候他们也会觉得厌倦和疲惫,不喜欢过多地与电脑打交道。本文将探讨程序员为何需要适当的休息和放松,以及如何更好地管理…

Excel TEXT函数格式化日期

一. 基本语法 ⏹Excel 的 TEXT 函数用于将数值或日期格式化为指定的文本格式 TEXT(value, format_text)二. 拼接路径案例 # 将当前单元格日期格式化 "ls -ld /data/jmw/01/"&TEXT(A2,"YYYYMMDD")&""# 此处的日期, 是名称管理器里面定…

踩坑实录(Fourth Day)

今天开工了,其实还沉浸在过年放假的喜悦中……今天在自己写 Vue3 的项目,虽说是跟着 B 站在敲,但是依旧是踩了一些个坑,就离谱……照着敲都能踩到坑,我也是醉了…… 此为第四篇(2024 年 02 月 18 日&#x…

2024年重磅消息:来自OpenAI发布的视频生成模型Sora

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…

【COMP337 LEC 5-6】

LEC 5 Perceptron &#xff1a; Binary Classification Algorithm 8 感应器是 单个神经元的模型 突触连接的强度取决于接受外部刺激的反应 X input W weights a x1*w1x2*w2....... > / < threshold Bias MaxIter is a hyperparameter 超参数 which has to be chosen…

Vue+Vite项目初建(axios+Unocss+iconify)

一. 创建项目 npx --package vue/cli vue 项目成功启动后&#xff0c;进入http://localhost:3200&#xff0c;即可进入创建好的页面(假设启动端口为3200) 二. 测试网络通讯模块 假设有本地服务器地址localhost:8000提供接口服务&#xff0c;接口为localhost:8000/token&#…

【机构vip教程】Unittest(1):unittest单元测试框架简介

unittest单元测试框架简介 unittest是python内置的单元测试框架&#xff0c;具备编写用例、组 织用例、执行用例、功能&#xff0c;可以结合selenium进行UI自动化测 试&#xff0c;也可以结合appium、requests等模块做其它自动化测试 官方文档&#xff1a;https://docs.pytho…

(2.8)ICDE 2023|Wind-Bell Index:面向图数据库的超快速边查询

ICDE 2023|Wind-Bell Index&#xff1a;面向图数据库的超快速边查询 为了高效存储和处理图&#xff0c;存图数据库得到了快速发展。然而&#xff0c;大多数图数据库采用的基础数据结构都是邻接表&#xff0c;虽然在稀疏图中可以发挥不错的效果&#xff0c;但存在一些关键问题&…

09_Java集合

一、Java集合框架概述 一方面&#xff0c; 面向对象语言对事物的体现都是以对象的形式&#xff0c;为了方便对多个对象的操作&#xff0c;就要对对象进行存储。另一方面&#xff0c;使用Array存储对象方面具有一些弊端&#xff0c;而Java 集合就像一种容器&#xff0c;可以动态…

专业140+总分420+南京信息工程大学811信号与系统考研经验南信大电子信息与通信工程,真题,大纲,参考书

今年顺利被南信大电子信息录取&#xff0c;初试420&#xff0c;专业811信号与系统140&#xff08;Jenny老师辅导班上140很多&#xff0c;真是大佬云集&#xff09;&#xff0c;今年应该是南信大电子信息最卷的一年&#xff0c;复试线比往年提高了很多&#xff0c;录取平均分380…

【c++】STL之stack和queue详解

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;掌握stack和queue库&#xff0c;了解deque库 >…

网络原理(HTTP篇)

网络原理HTTP 前言HTTPHTTP的工作流程抓包工具抓取HTTP报文HTTP报文格式 请求报文具体细节首行URLURL的基本格式URL encode 方法 报头(header)HostContent-Length 和 Content-TypeUser-Agent&#xff08;UA&#xff09;RefererCookie&#xff08;重要&#xff09; 前言 如图&a…

JRT监听-PDF-Excel-Img

依赖全新设计&#xff0c;我们无需再顾虑历史兼容性的束缚&#xff1b;同时&#xff0c;基于多年来累积的深入需求理解&#xff0c;JRT监听机制巧妙地借助CMD命令模式&#xff0c;达成了监听的全面统一。无论是PDF、Excel还是图片文件&#xff0c;都不再需要特殊对待或额外区分…

【Java程序员面试专栏 Java领域】Java虚拟机 核心面试指引

关于Java 虚拟机部分的核心知识进行一网打尽,主要包括Java虚拟机的内存分区,执行流程等,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示 JVM 程序执行流程 包括Java程序的完整执行流程,以及Javac编译,JIT即时编译 Java程序的完整执…

防火墙 iptables(二)-------------SNAT与DNAT

一、SNAT ①SNAT 应用环境: 局域网主机共享单个公网IP地址接入Internet (私有IP不能在Internet中正常路由) ②SNAT原理: 源地址转换&#xff0c;根据指定条件修改数据包的源IP地址&#xff0c;通常被叫做源映射 数据包从内网发送到公网时&#xff0c;SNAT会把数据包的源IP由…

pytorch中dataloader的prefetch_factor出错

今天跑huggingface的示例的时候&#xff0c;遇到了最让我头疼的问题&#xff0c;国内网上还没有对应的解释&#xff0c;我可能是第一人&#xff08;汗&#xff09;先看看报错&#xff1a; Traceback (most recent call last):File "F:\transformer\transformers\examples…