4、python列表Lists

列表和你可以用它们做的事情。包括索引,切片和变异!

文章目录

  • 1.列表
    • 1.1索引
    • 1.2切片
    • 1.3列表修改
    • 1.4列表函数
    • 1.5插曲:对象
    • 1.6列表方法
      • 1.6.1列表搜索
    • 1.7Tuples元组

1.列表

Python 中的 List 表示有序的值序列:

In [1]:

primes = [2, 3, 5, 7]

我们可以把其他类型的事情列入清单:

In [2]:

planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']

我们甚至可以列一个清单:

In [3]:

hands = [['J', 'Q', 'K'],['2', '2', '2'],['6', 'A', 'K'], # (Comma after the last element is optional)
]
# (I could also have written this on one line, but it can get hard to read)
hands = [['J', 'Q', 'K'], ['2', '2', '2'], ['6', 'A', 'K']]

列表可以包含不同类型的变量:

In [4]:

my_favourite_things = [32, 'raindrops on roses', help]
# (Yes, Python's help function is *definitely* one of my favourite things)

1.1索引

可以使用方括号访问单个列表元素。

哪个行星离太阳最近? Python 使用从零开始的索引,因此第一个元素的索引为0。

In [5]:

planets[0]

Out[5]:

'Mercury'

下一个最近的星球是什么?

In [6]:

planets[1]

Out[6]:

'Venus'

哪个行星离太阳最远?

列表末尾的元素可以用负数访问,从 -1开始:

In [7]:

planets[-1]

Out[7]:

'Neptune'

In [8]:

planets[-2]

Out[8]:

'Uranus'

1.2切片

前三颗行星是什么? 我们可以通过切片来回答这个问题:

In [9]:

planets[0:3]

Out[9]:

['Mercury', 'Venus', 'Earth']

planets[0:3] 是我们询问从索引 0 开始并一直到 但不包括 索引 3 的方式。

起始和结束索引都是可选的。如果省略起始索引,则假定为 0。因此,我可以将上面的表达式重写为:

In [10]:

planets[:3]

Out[10]:

['Mercury', 'Venus', 'Earth']

如果我省略了结束索引,它被假定为列表的长度。

In [11]:

planets[3:]

Out[11]:

['Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']

也就是说,上面的表达意思是“给我从索引3开始的所有行星”。

我们还可以在切片时使用负指数:

In [12]:

# All the planets except the first and last
planets[1:-1]

Out[12]:

['Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus']

In [13]:

# The last 3 planets
planets[-3:]

Out[13]:

['Saturn', 'Uranus', 'Neptune']

1.3列表修改

列表是“可变的”,这意味着它们可以“就地”修改。

修改列表的一种方法是为索引或片表达式赋值。

例如,假设我们想重命名火星:

In [14]:

planets[3] = 'Malacandra'
planets

Out[14]:

['Mercury','Venus','Earth','Malacandra','Jupiter','Saturn','Uranus','Neptune']

嗯,这是相当拗口。让我们通过缩短前三个行星的名称来补偿。

In [15]:

planets[:3] = ['Mur', 'Vee', 'Ur']
print(planets

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

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

相关文章

“五星卡”上新!合合信息“外国人永久居留身份证”识别产品助力金融机构提升服务效率

外国人永久居留身份证(简称“永居证”),是国家移民管理局对符合条件的外国人批准其在境内永久居留后,为其签发的法定身份证件。2023年12月,国家移民管理局正式启用签发更趋近于居民身份证技术体系的新一版永居证&#…

【Flutter 开发实战】Dart 基础篇:List 详解

嗨,各位朋友们,欢迎来到这篇博客!今天我们将一起踏入 Dart 语言的神奇世界,深入了解 Dart 中的 List 类型。不用担心,我会尽可能用最通俗易懂的语言,让你对 List 有一个更深刻的理解。 Dart 中的 List Li…

SegVol: Universal and Interactive Volumetric Medical Image Segmentation

Abstract 精确的图像分割为临床研究提供了有意义且结构良好的信息。尽管在医学图像分割方面取得了显著的进展,但仍然缺乏一种能够分割广泛解剖类别且易于用户交互的基础分割模型。 本文提出了一种通用的交互式体医学图像分割模型——SegVol。通过对90k个未标记的C…

kibana查看和展示es数据

本文来说下使用kibana查看和展示es数据 文章目录 数据准备查询所有文档示例kibana查看和展示es数据 数据准备 可以使用es的命令或者java程序来往,es进行新增数据 查询所有文档示例 在 apifox 中,向 ES 服务器发 GET请求 :http://localhost:92…

rust跟我学二:模块编写与使用

图为RUST吉祥物 大家好,我是get_local_info作者带剑书生,这里用一篇文章讲解get_local_info中模块的使用。 首先,先要了解get_local_info是什么? get_local_info是一个获取linux系统信息的rust三方库,并提供一些常用功能,目前版本0.2.4。详细介绍地址:[我的Rust库更新]g…

在 Windows 11 上通过 Autoawq 启动 Mixtral 8*7B 大语言模型

在 Windows 11 上通过 Autoawq 启动 Mixtral 8*7B 大语言模型 0. 背景1. 安装依赖2. 开发 main.py3. 运行 main.py 0. 背景 看了一些文章之后,今天尝试在 Windows 11 上通过 Autoawq 启动 Mixtral 8*7B 大语言模型。 1. 安装依赖 pip install torch torchvision …

Spring框架的背景学习

Spring 的前世今生 相信经历过不使用框架开发 Web 项目的 70 后、80 后都会有如此感触,如今的程序员开发项目太轻松了,基本只需要关心业务如何实现,通用技术问题只需要集成框架便可。早在 2007 年,一个基于 Java语言的开源框架正…

Opencv基础用法学习2

案例1&#xff1a;调整图片颜色 在opencv中的读图方式是BGR,常见的读图方式是RGB // opencv 调整颜色 #include "opencv2/opencv.hpp" #include <iostream>int main() {// 读取图片cv::Mat src cv::imread("./media/dog.jpg");// BGR -> Grayc…

计算机网络 网络安全

网络安全 网络安全问题概述 计算机网络面临的女全性威胁 计算机网络的通信而临两大类威胁&#xff0c;即被动攻击和主动攻击 被动攻击是指攻击者从网络上窃听他人的通信内容。通常把这类攻击称为截获。在被动攻击中&#xff0c;攻击者只是观察和分析某一个协议数据单元 PDU…

Docker-Dockerfile

DockerFile(用于构建镜像的文本) 常用的保留字 FROM #基础镜像,基于那个镜像 MAINTAINER #镜像的维护者 #构建容器需要执行的命令(RUN)支持两种格式 shell格式&#xff1a;RUN yum -y install vim #exec格式:RUN["./test.sh", "dev", "offile&qu…

4、Redis高并发分布式锁实战

引言 在分布式系统中&#xff0c;保证数据的一致性和避免竞争条件是至关重要的。分布式锁是一种常用的机制&#xff0c;而Redis作为一款高性能的内存数据库&#xff0c;提供了简单而强大的分布式锁方案。本文将深入探讨如何利用Redis高并发分布式锁来解决分布式系统中的并发控…

Armv8-R AArch32 architecture概念学习

提示 该博客主要为个人学习&#xff0c;通过阅读官网手册整理而来&#xff08;个人觉得阅读官网的英文文档非常有助于理解各个IP特性&#xff09;。若有不对之处请参考参考文档&#xff0c;以官网文档为准。阅读该文章&#xff0c;可以先查看AArch64 Exception Model学习&…

idea 安装免费Ai工具 codeium

目录 概述 ide安装 使用 chat问答 自动写代码 除此外小功能 概述 这已经是我目前用的最好免费的Ai工具了&#xff0c;当然你要是有钱最好还是用点花钱的&#xff0c;比如copilot&#xff0c;他可以在idea全家桶包括vs&#xff0c;还有c/c的vs上运行&#xff0c;还贼强&am…

C语言如何引⽤⼀个已经定义过的外部变量?

一、问题 如何引⽤⼀个已经定义过的外部变量&#xff1f; 二、解答 如果在⼀个⽂件中定义了⼀个外部变量 a&#xff0c;在另⼀个程序⽂件中再定义⼀个外部变量 a&#xff0c;就会产⽣⼀个“重复定义”的错误&#xff0c;那么怎样引⽤⼰经定义的外部变量呢&#xff1f; 引⽤被…

CentOS下用rpm安装软件时报错error: Failed dependencies

在CentOS下用rpm安装软件时会报如下错误&#xff1a; 1、安装时提示&#xff1a; [rootdb software]# rpm -ivh ksh-20120801-254.el8.x86_64.rpm warning: ksh-20120801-254.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 8483c65d: NOKEY error: Failed depende…

力扣白嫖日记(sql)

前言 练习sql语句&#xff0c;所有题目来自于力扣&#xff08;https://leetcode.cn/problemset/database/&#xff09;的免费数据库练习题。 今日题目&#xff1a; 586.订单最多的客户 表&#xff1a;Orders 列名类型order_numberintcustomer_numberint 查找下了最多订单的…

机器人持续学习基准LIBERO系列7——计算并可视化点云

0.前置 机器人持续学习基准LIBERO系列1——基本介绍与安装测试机器人持续学习基准LIBERO系列2——路径与基准基本信息机器人持续学习基准LIBERO系列3——相机画面可视化及单步移动更新机器人持续学习基准LIBERO系列4——robosuite最基本demo机器人持续学习基准LIBERO系列5——…

用Perl采集美容化妆目标网站做一个深度调研

在Perl中编写爬虫程序涉及到几个关键步骤&#xff0c;包括使用相关的库来发送HTTP请求和解析HTML内容。首先我们要了解Perl爬虫程序编程得几大步骤&#xff1a;安装必要的Perl模块—创建一个用户代理—发送HTTP请求—解析响应内容—提取所需数据—存储或进一步处理数据。所以说…

【ChatGPT VS baidu】:提升程序员开发效率的智能助手

在现代软件开发中&#xff0c;ChatGPT&#xff08;Chat Generative Pre-trained Transformer&#xff09;作为一种基于人工智能的对话模型&#xff0c;为程序员带来了许多便利和效率提升。ChatGPT 结合了先进的自然语言处理和生成技术&#xff0c;能够理解和生成人类语言&#…

springcloud Alibaba中gateway和sentinel联合使用

看到这个文章相信你有一定的sentinel和gateway基础了吧。 官网的gateway和sentinel联合使用有些过时了&#xff0c;于是有了这个哈哈&#xff0c;给你看看官网的&#xff1a; 才sentinel1.6&#xff0c;现在都几了啊&#xff0c;所以有些过时。 下面开始讲解&#xff1a; 首先…