python之序列反转

news2025/1/23 3:17:57

python之序列反转

方式1:.reverse()

a = [1, 2, 3, 4, 5]
print(a.reverse())  # None,函数原地反转,不具备排序功能,而且没有返回值
print(a)  # [5, 4, 3, 2, 1]

方式2:reversed

a = [1, 2, 3, 4, 5]
print(reversed(a))  # <list_reverseiterator object at 0x000001CDB7FE1BE0>
print(list(reversed(a)))  # [5, 4, 3, 2, 1]

方式3:[::-1]

a = [1, 2, 3, 4, 5]
print(a[::-1])  # [5, 4, 3, 2, 1]

注:reverse是列表list类下的函数,只能给列表用,reversed是python内置函数,可以给字符串、字典、列表等使用。
在这里插入图片描述
在这里插入图片描述
使用reverse反转字符串

b = 'abcdefg'
print(b.reverse())

报错:AttributeError: ‘str’ object has no attribute ‘reverse’

使用reversed反转字符串

b = 'abcdefg'
print(reversed(b))  # <reversed object at 0x0000026A937A10D0>
print(list(reversed(b)))  # ['g', 'f', 'e', 'd', 'c', 'b', 'a']
print((list(reversed(b))))

使用[::-1]反转字符串

b = 'abcdefg'
print(b[::-1])  # gfedcba

使用reversed反转元组

a = (1, 2, 3, 4, 5)
print(reversed(a))  # <reversed object at 0x000002E7504C1BE0>
print(list(reversed(a)))  # [5, 4, 3, 2, 1]

使用[::-1]反转元组

a = (1, 2, 3, 4, 5)
print(a[::-1])  # (5, 4, 3, 2, 1)

不可以对集合使用reversed

a = {1, 2, 3, 4, 5}
print(reversed(a))

报错TypeError: ‘set’ object is not reversible

也不可以对集合使用[::-1]

a = {1, 2, 3, 4, 5}
print(a[::-1])

报错TypeError: ‘set’ object is not subscriptable

对字典使用reversed

c = {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 4, 'key5': 5}
print(reversed(c))  # <reversed object at 0x0000026A937A10D0>
print(list(reversed(c)))  # ['key5', 'key4', 'key3', 'key2', 'key1']

对键进行了反转,可以根据反转后的键去取值

不可以对字典使用[::-1]

c = {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 4, 'key5': 5}
print(c[::-1])  

报错TypeError: unhashable type: ‘slice’

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

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

相关文章

2021年全国职业院校技能大赛网络搭建与应用赛项——国赛组播题

2021年全国职业院校技能大赛网络搭建与应用赛项——国赛组播题 sw1:# ip pim multicast-routing &#xff08;开启组播模式&#xff0c;在全局模式&#xff09; int vlan 10 ip pim dense-mode &#xff08;在接口模式下开启组播-密集模式协议&#xff09; ip igmp version 2 i…

正大国际期货:恒指德指交易导致亏损的原因是什么?

在交易过程中&#xff0c;经常会遇到我们事先对这次的交易进行了详细的分析推理&#xff0c;还制定了周密可行的策略&#xff0c;但真正落实到交易活动过程中却变得面目全非&#xff0c;屡屡败退&#xff0c;让我们措手不及这样的现象&#xff0c;是什么原因导致&#xff1f;正…

如何开通 API 服务并授予项目 API 服务的调用权限

涂鸦 IoT 开发平台开放多种业务 API 服务&#xff0c;全面覆盖全屋智能管理、行业通用设备用户管理、垂直品类开放能力、各类数据服务等业务需求。 本文将为大家介绍如何开通 API 服务并授予项目 API 服务的调用权限。 个人数据隐私声明 开发者调用的部分 云服务 API 会获取用…

链表(2)------数据结构

1)进行反转单链表:节点的值不发生改变&#xff0c;只需要进行修改节点的指向 进行测试的时候要给方法传入一个头结点 输入:1&#xff0c;2&#xff0c;3&#xff0c;4&#xff0c;5&#xff1b; 输出:5&#xff0c;4&#xff0c;3&#xff0c;2&#xff0c;1&#xff1b; 1)我…

从0到1介绍一下开源大数据比对平台dataCompare

1.背景&现状 在大数据领域也已经工作了多年&#xff0c;无论所待过的大公司还是小公司&#xff0c;都会遇到集群升级迁移过程中据搬迁等相关工作&#xff0c;经常会碰到搬迁之后&#xff0c;搬迁的数据是不是能对的上呢&#xff1f;两边数据究竟是不是一致的呢&#xff1f…

javaee之Mybatis4

延迟加载与立即加载的概念 Mybatis中的延迟加载与立即加载 一、一对一实现延迟加载的步骤&#xff08;多对一&#xff0c;看成一对一&#xff09; 我们这里是利用account表中的一个方法来做 先来看IAccountDao里面的一个方法 然后再去看持久层IAccountDao.xml 这个方法给我们…

Linux学习-92-SELinux管理

18 SELinux管理 root 用户在 Linux 系统当中就是无所不能的&#xff0c;而且读、写和执行权限对 root 用户完全没有作用。root 用户的存在极大地方便了 Linux 的管理&#xff0c;但是也造成了一定的安全隐患。绝大多数系统的严重错误都是由于 root 用户的误操作引起的&#xff…

开源项目 Spartacus 的 git 分支使用规范

Spartacus 开源项目里存在如下的 git 分支&#xff1a; feature/GH-xxxx 分支用于简单的功能和错误修复epic/epic-name 分支用于大功能的开发release/1.4.0-rc.0 分支用于特定的发布&#xff08;你可以将它们与维护分支区分开来&#xff0c;因为包含了完整的版本号&#xff09…

压力测试笔记

压测学习 要求&#xff1a;满足100并发500ms性能要求 压测场景 新系统上线支持 在新系统上线前&#xff0c;通过执行性能压测能够对系统的负载能力有较为清晰的认知&#xff0c;从而结合预估的潜在用户数量保障系统上线后的用户体验。技术升级验证 在系统重构过程中&#xf…

Github每日精选(第80期):自动生成命令行python-fire

Python Fire 是一个用于从绝对任何Python对象自动生成命令行界面 (CLI) 的库。 Python Fire 是一种在 Python 中创建 CLI 的简单方法。 [1]Python Fire 是用于开发和调试 Python 代码的有用工具。 [2]Python Fire 有助于探索现有代码或将其他人的代码转换为 CLI。[3]Python Fi…

Co-Scale Conv-Attentional Image Transformers

Co-Scale Conv-Attentional Image Transformers一、引言二、实现方法&#xff08;一&#xff09;、Conv-Attention Module三、Co-Scale Conv-Attentional Transformers&#xff08;一&#xff09;、Co-Scale串行块&#xff08;二&#xff09;、Co-Scale并行块&#xff08;三&am…

跳频和扩频通信

跳频(FH, Frequency Hopping)是指载波频率在很宽频率范围内按某种序列或图案进行跳变&#xff0c;它能进一步提高系统的抗干扰性能。 跳频技术改善了无线信号的传输质量&#xff0c;可以明显地降低同频干扰和频率选择性衰落&#xff0c;为了避免在同一小区或临近小区中&#xf…

无惧管控放开,分享居家办公、远程办公项目经验

国家已经放开疫情管控&#xff0c;随之而来的&#xff0c;是各地大面积的“小阳人”爆发&#xff0c;很多企业不得不重新启动远程办公机制。 云盒子科技拥有良好的的远程办公经验&#xff0c;产品是包含企业云盘、流程审批、邮件、通讯录、企业公告一体化的在线文档协作平台。…

Ubuntu18.04下调用fastdds实现通信

提纲 1、编写idl 2、fastddsgen生成cpp的源代码文件 3、编译生成可执行文件 4、执行可执行文件完成通讯 1、编写idl 现在我们可以编写一个简单的 IDL&#xff1a; 2、fastddsgen生成cpp的源代码文件 编写好idl后&#xff0c;就可以通过 fastddsgen 快速生成代码。 最终会自动…

【Vsan数据恢复】Vsan分布式文件系统数据丢失的数据恢复

vSAN存储数据恢复环境&#xff1a; 某公司一台vSAN分布式文件系统存储设备&#xff1b; VSAN存储采用了超融合架构&#xff0c;存储内总共有24块硬盘。 vSAN存储故障&初检&#xff1a; 由于未知原因关机重启&#xff0c;逻辑架构出现严重故障&#xff0c;上层虚拟机瘫痪&am…

新冠确诊阳性后的第一篇博客,一文带你学习SQL注入

新冠确诊阳性后的第一篇博客&#xff0c;一文带你学习SQL注入1.你好SQL注入2.盲注3.Timing Attack4.常见的攻击技巧5.SQL CoIumn Truncation6.防御SQL注入SQL注入防御的误区使用预编译语句使用存储过程SQL注入攻击属于注入攻击的一种&#xff0c;注入攻击的本质&#xff0c;是把…

echarts3D柱状图,多个柱子,单个柱子,传参即可

<template><!-- 折线图 --><div ref"line" class"line"></div> </template><script> // colorList 横条颜色数组 // data 数据 格式为&#xff1a; [] // areaStyle 渐变色 import * as echarts from echarts import…

AOT(超前编译)实例分析

文章目录一、背景二、具体实施2.1 tfcomfile 是什么&#xff1f;2.2 tfcompile 的功能是什么&#xff1f;2.3使用tfcompile三、总结一、背景 前边已经了解了JIT和AOT的基本概念&#xff0c;AOT(提前编译)方式就是在代码执行阶段之前全部编译成目标指令&#xff0c;进入执行阶段…

自动网络搜索NAS之FBNetV1

1. 摘要 为移动设备设计卷积网络挑战巨大&#xff0c;因为设计空间巨大&#xff0c;现有NAS方法在计算上是昂贵的。另外&#xff0c;之前的工作关注降低FLOPs&#xff0c;但是FLOPs并不总是反应真实的延迟。因此基于differentiable neural architecture search&#xff08;DNA…

sd卡怎么格式化?5个步骤轻松教会你

随着SD卡的广泛使用&#xff0c;总会有各种情况导致SD卡必须要格式化才行。但是格式化有没有办法执行&#xff0c;sd卡怎么格式化&#xff1f;还有人会因为误操作导致的数据丢失。现在&#xff0c;小编就给大家介绍一下怎么格式化SD卡&#xff1f;以及格式化后SD卡数据的恢复方…