PYTHON学习笔记(四、pyhton数据结构--列表)

(1)list列表

列表的含义是指:(1)一系列的按特定顺序排列的元素组成。(2)python中内置的可变序列。(3)在python中使用[]定义列表,元素与元素之间使用英文的逗号分隔。(4)列表中的元素可以是任意的数据类型。(5)允许重复的数据存在。

1、列表的创建方式

1)使用[  ]直接创建列表

语法结构如下:

列表名=[element1,element2,element3......]

例如:

# 使用直接创建列表
lst=['hello','world', 98,100.5]
print(lst)

输出以下结果:

2)使用内置函数list()创建列表

语法结构如下:

列表名=list(序列)

例如:

# 使用内置函数list()创建列表
lst2 = list('helloworld')
lst3 = list(range(1,10,2))
print(lst2)
print(lst3)#列表是序列的一种,对序列的操作符、运算符,列表均可使用
print(lst+lst2+lst3)
print(lst*3)
print(max(lst3))

输出结果为:

3)使用”列表生成式“生成列表

列表生成式的含义是用来创建列表的表达式。

例如:

import random
lst = [item for item in range(1,11)]
print(lst)lst = [item*item for item in range(1,11)]
print(lst)lst = [random.randint(1,100) for item in range(10)]
print(lst)

上面代码中有三个lst,第一个lst是遍历[1,11)之间的所有整数;第二个lst是遍历[1,10)之间的数的平方;第三个lst是循环10次,生成一个[0,10)的序列,每个元素都取[1,100]之间的随机数(即生成10个随机数)

我们还可以使用列表生成式来生成一个二维列表,例如:

lst = [[j for j in range(6)] for i in range(4)]
print(lst)

上面代码的意思是:首先循环遍历4个序列号,但是每个序列号上取得值为j,这个j也是通过循环遍历6个序列号,每个序列号上的值指定为j(即每次生成一个j列表,总共生成4次)。

2、列表的遍历操作

1)第一种情况

lst = ['hello','world','python','php']
#使用遍历循环for遍历列表元素
for i in lst:print(i)

在这种情况中,直接使用i对lst中的元素及进行搜索,最后将所有元素进行输出。

2)第二种情况

lst = ['hello','world','python','php']
#使用for循环,range()函数,len()函数,根据索引进行遍历
for x in range(0,len(lst)):print(lst[x])

在这种情况中,先使用len()函数,将lst转化成元素个数,然后使用for循环遍历个数,最后输出列表中的个数对应的元素。

3、列表的修改操作

编号使用方式说明
1列表.append(元素)向列表的尾部追加一个元素
2列表.extend(容器)将数据容器的内容(无结构)依次取出,追加到列表尾部
3列表.insert(下标, 元素)在指定下标处,插入指定的元素
4del 列表[下标]删除列表指定下标元素
5列表.pop(下标)删除列表指定下标元素(能得到返回值)
6列表.remove(元素)从前向后,删除此元素第一个匹配项
7列表.clear()清空列表
8列表.count(元素)统计此元素在列表中出现的次数
9列表.index(元素)

查找指定元素在列表的下标

找不到报错ValueError

10len(列表)统计容器内有多少元素

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

含有罗马字母的txt转换为csv文件读取-报错

r语言绘图二&#xff08;输入复杂的数学符号&#xff0d;&#xff0d;希腊字母表&#xff09; - R语言论坛 - 经管之家(原人大经济论坛) (pinggu.org) CSV读取报错 gcmeta <- read.csv("metadata.csv") > head(gcmeta)Sample Patient Tissue Platform Subty…

CentOS(7.x、8)上安装EMQX

EMQX 是一个高度可扩展的分布式 MQTT 消息服务器&#xff0c;适用于 IoT、M2M 和移动应用程序。以下是在 CentOS 系统上安装 EMQX 的基本步骤&#xff1a; 在 CentOS 上安装 EMQ X 步骤 1: 添加 EMQ X YUM 源 首先&#xff0c;你需要添加 EMQ X 的官方 YUM 源到你的 CentOS 系…

NNOM训练环境搭建(Windows)

目录 一、安装Anaconda 二、安装nnom编译环境 1. 创建并激活虚拟环境 2. 统一安装所有安装包 三、编译NNOM 一、安装Anaconda windows版本&#xff1a;Anaconda3-2019.10-Windows-x86_64.exe 勾选添加进系统环境变量&#xff0c;其他使用默认选项进行安装。 二、安装nnom…

Dubbo 的服务降级

在分布式系统中&#xff0c;服务的高可用性是至关重要的。然而&#xff0c;由于网络故障、服务器宕机等原因&#xff0c;服务不可用的情况时有发生。为了确保系统的稳定性和用户体验&#xff0c;Apache Dubbo 提供了服务降级功能。服务降级可以在远程服务不可用时&#xff0c;自…

pycharm报错:No module named pip/No module named pytest

1、问题概述? 今天在执行一个python脚本的时候,控制台提示:No module named pytest,就是没有pytest模块,于是我使用pip命令进行安装,命令如下; pip install pytest 结果又提示No module named pip,说我没有pip模块,没办法,再安装pip 2、安装pip-方式1 在pycharm的T…

【python基础知识】整除

熟练使用你所常用的开发语言是一个非常基本的要求。如果你日常需要使用Python&#xff0c;但是你对向上取整&#xff0c;向下取整&#xff0c;以及Python中的默认实现方式是什么都不知道的话&#xff0c;那么我就需要怀疑你的专业能力了。 1. 整除 讲解这个整除的知识&#xf…

因果推断 | 双重机器学习(DML)算法原理和实例应用

文章目录 1 引言2 DML算法原理2.1 问题阐述2.2 DML算法 3 DML代码实现3.1 策略变量为0/1变量3.2 策略变量为连续变量 4 总结5 相关阅读 1 引言 小伙伴们&#xff0c;好久不见呀。 距离上次更新已经过去了一个半月&#xff0c;上次发文章时还信誓旦旦地表达自己后续目标是3周更…

C#中的Func

1.Func委托的定义和使用步骤 Func委托在C#中用于表示一个具有指定参数和返回类型的方法。‌Func委托的定义允许你指定参数的类型和返回值的类型&#xff0c;‌它可以有多达16个参数。‌第一个泛型参数表示方法的参数类型&#xff0c;‌最后一个泛型参数表示方法的返回类型。‌…

VINS介绍

VINS&#xff08;Visual-Inertial Navigation System&#xff09;是一个视觉惯性导航系统&#xff0c;通常用于机器人、无人机或任何需要在未知环境中自主导航的移动平台。VINS结合了视觉传感器&#xff08;通常是相机&#xff09;和惯性测量单元&#xff08;IMU&#xff09;的…

【BUG】已解决:AttributeError: ‘WindowsPath‘ object has no attribute ‘rstrip‘

AttributeError: ‘WindowsPath‘ object has no attribute ‘rstrip‘ 目录 AttributeError: ‘WindowsPath‘ object has no attribute ‘rstrip‘ 【常见模块错误】 【错误原因】 【解决方案】 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&…

Elasticsearch数据迁移

前言 近期在搞ES集群的迁移&#xff0c;以及日常ES运维中也涉及到同集群内索引的重命名、迁移等实际场景。就考虑把实际场景模拟一下&#xff0c;侧重不同集群间的数据迁移&#xff0c;对比观察一下目前主流的数据迁移方式的优点和缺点。为之后真实迁移场景提供参考。 这次对…

Linux(openwrt)下iptables+tc工具实现网络流量限速控制(QoS)

基础介绍 Netfilter是Linux操作系统核心层内部的一个数据包处理模块&#xff0c;它具有如下功能&#xff1a;网络地址转换(Network Address Translate)数据包内容修改以及数据包过滤的防火墙功能。Netfliter框架不仅仅在ipv4中有应用&#xff0c;bridge&#xff0c;ipv4&#…

ipv6 基础学习(一)

IPv6 为什么要有IPV6&#xff1f; IPv4地址空间有限&#xff1a;IPv4使用32位地址&#xff0c;最多可提供约43亿个地址。随着互联网设备数量的爆炸式增长&#xff0c;这些地址已经几乎耗尽。 IPv6地址空间庞大&#xff1a;IPv6使用128位地址&#xff0c;可以提供大约3.410^3…

面试题:Java中堆内存和栈内存的区别,缓存数据是把数据放到哪里

目录 堆内存&#xff08;Heap&#xff09;栈内存&#xff08;Stack&#xff09;String字符串的hashcode缓存 在Java中&#xff0c;堆内存&#xff08;Heap&#xff09;和栈内存&#xff08;Stack&#xff09;是两种不同类型的内存区域。它们各自扮演着不同的角色&#xff0c;并…

深入理解TCP/IP协议中的三次握手

&#x1f44d; 个人网站&#xff1a;【洛秋资源小站】 深入理解TCP/IP协议中的三次握手 在计算机网络中&#xff0c;TCP/IP协议是通信的基石。理解TCP/IP协议中的三次握手是掌握网络通信的关键步骤之一。本文将详细解释TCP/IP协议中的三次握手过程&#xff0c;探讨其工作原理&…

Python面试整理-字符串处理

在Python中,字符串是一种非常重要且常用的数据类型,用于处理文本。字符串操作包括许多不同的方法,可以用来查询、修改、和处理字符串。以下是一些常用的字符串处理技术: 创建字符串 字符串可以通过单引号、双引号或三引号创建,支持多行字符串。 s1 = Hello s2 = "Wor…

操作系统安全:Windows隐藏账户的安全问题与实战操作。

「作者简介」&#xff1a;冬奥会网络安全中国代表队&#xff0c;CSDN Top100&#xff0c;就职奇安信多年&#xff0c;以实战工作为基础著作 《网络安全自学教程》&#xff0c;适合基础薄弱的同学系统化的学习网络安全&#xff0c;用最短的时间掌握最核心的技术。 Windows系统的…

2024-7-21 IT领域最新资讯概览

目录 微软蓝屏事件及后续影响 网络安全公司CrowdStrike的声明与股价波动 全球IT支出增长趋势 微软蓝屏事件及后续影响 事件概述&#xff1a; 由于网络安全公司CrowdStrike的技术更新中的“bug”&#xff0c;导致微软部分应用和服务出现蓝屏死机问题&#xff0c;进而引发了全…

VulnHub:insomnia

靶机下载地址 信息收集 主机发现和端口扫描 攻击机网段192.168.31.0/24。 # 主机发现 nmap 192.168.31.0/24 -Pn -T4 # 靶机ip:192.168.31.207 端口扫描 nmap 192.168.31.207 -A -p- -T4 经过nmap扫描发现目标主机有http服务&#xff0c;端口是8080。 目录扫描 访问http…

【SD】深入理解Stable Diffusion与ComfyUI的使用

【SD】深入理解Stable Diffusion与ComfyUI的使用 1. Stable Diffusion&#xff08;SD&#xff09;原理概述2. 各部件详解3. SD的工作流程4. ComfyUI与SD的结合5. 总结 1. Stable Diffusion&#xff08;SD&#xff09;原理概述 整体结构&#xff1a;SD不是单一模型&#xff0c;…