v. 颠倒(reverse的过去式和过去分词);翻转

help(reversed)

Help on class reversed in module builtins:

class reversed(object)

| reversed(sequence) -> reverse iterator over values of the sequence

|

| Return a reverse iterator

|

| Methods defined here:

|

| __getattribute__(self, name, /)

| Return getattr(self, name).

|

| __iter__(self, /)

| Implement iter(self).

|

| __length_hint__(...)

| Private method returning an estimate of len(list(it)).

|

| __new__(*args, **kwargs) from builtins.type

| Create and return a new object. See help(type) for accurate signature.

|

| __next__(self, /)

| Implement next(self).

|

| __reduce__(...)

| Return state information for pickling.

|

| __setstate__(...)

| Set state information for unpickling.

reversed的英文解释

Return a reverse iterator. seq must be an object which has a __reversed__() method or supports the sequence protocol (the __len__() method and the __getitem__() method with integer arguments starting at 0).

reversed()函数的输入时任意一个序列,返回一份倒序后的序列副本。通常用于for循环需要倒序循环时。

eg:

seq = [1, 2, 3, 4, 5, 6, 7, 8]

for item in reversed(seq):

print(item, end=" ")

结果:

8 7 6 5 4 3 2 1

reversed()的功能:翻转对象

翻转函数reversed()调用参数类中的__reversed__()函数。

函数功能是反转一个序列对象,将其元素从后向前颠倒构建成一个新的迭代器

reversed()的应用

应用1: 序列的倒序循环

seq1 = list(range(8))

print("seq1为: {}".format(seq1))

for i in reversed(seq1):

print(i, end=' ')

结果:

seq1为: [0, 1, 2, 3, 4, 5, 6, 7]

7 6 5 4 3 2 1 0

seq2 = ['a', 'b', 'c', 'd']

print("seq2为: {}".format(seq2))

for i in reversed(seq2):

print(i, end=' ')

结果:

seq2为: ['a', 'b', 'c', 'd']

d c b a

应用2:

如果一个对象不存在__reversed__()方法,那么,reversed()会调用__len__()和__getitem__()生成倒序序列。

class MySeq():

def __len__(self):

return 6

def __getitem__(self, index):

return 'y{0}'.format(index)

for item in reversed(MySeq()):

print(item, end=', ')

结果:

y5, y4, y3, y2, y1, y0,

应用3:

如果我们需要定制或者优化倒序过程,我们只需重写__reversed__()方法。

class MySeq():

def __len__(self):

return 6

def __getitem__(self, index):

return 'y{0}'.format(index)

class MyReversed(MySeq):

def __reversed__(self):

return 'hello, bright!'

for item in reversed(MyReversed()): # 调用重写的__reversed__()方法。

print(item, end=' ')

结果:

h e l l o , b r i g h t !

或者:

class MySeq():

def __len__(self):

return 6

def __getitem__(self, index):

return 'y{0}'.format(index)

class MyReversed(MySeq):

def __reversed__(self):

return reversed('hello, bright!')

for item in reversed(MyReversed()):

print(item, end=' ')

结果:

! t h g i r b , o l l e h

应用4:

如果reversed()的参数不是一个序列对象,我们应该为该对象定义一个__reversed__方法,这个时候就可以使用reversed()函数了。

class MyScore:

def __init__(self, name, *args):

self.name = name

self.scores = []

for value in args:

self.scores.append(value)

def __reversed__(self):

self.scores = reversed(self.scores)

x = MyScore("bright", 66, 77, 88, 99, 100)

print('我的名字: {0}, \n我的成绩: {1}'.format(x.name, x.scores))

print('我的成绩按降序排列:{}'.format(list(reversed(x.scores))))

结果:

我的名字: bright,

我的成绩: [66, 77, 88, 99, 100]

我的成绩按降序排列:[100, 99, 88, 77, 66]

知识在于点点滴滴的积累,我会在这个路上Go ahead,

有幸看到我博客的朋友们,若能学到知识,请多多关注以及讨论,让我们共同进步,扬帆起航。

后记:打油诗一首

适度锻炼,量化指标

考量天气,设定目标

科学锻炼,成就体标

高效科研,实现学标

python内置函数reversed_Python3内置函数——reversed() = 翻转我的世界相关推荐

  1. 宣传python的顺口溜-Python3内置函数——reversed() = 翻转我的世界

    v. 颠倒(reverse的过去式和过去分词):翻转 help(reversed) Help on class reversed inmodule builtins:classreversed(obj ...

  2. python sort函数返回值_lambda函数与箭头函数在集合内置函数应用中的对照学习

    Python语言中有一个定义轻量级规则的lambda函数,其语法格式为: Lambda 参数列表:返回值表达式 简单的例子如:定义func=lambda x,y:x+y,则调用func(10,20)的 ...

  3. Python 2.7 学习笔记 内置语句、函数、标准库

    使用任何开发语言进行软件开发,都离不开语言提供的内置库(或Api),甚至说内置库的强大及使用是否方便都会影响大家对开发语言的选择. python语言,一样提供了很多内置的功能,可供开发时使用.主要有如 ...

  4. python 三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数

    一.三元表达式 语法:[成立1 if condition1 else成立2 if condition2 else ...if 成立N conditionN else 不成立] sex = 'man' ...

  5. python方法和函数的格式是完全一样的_【python基础语法】常用内置函数、关键字、方法和之间的区别(小结)...

    '''关键字: False:bool数据类型 True:bool数据类型 None:表示数据的内容为空 and:逻辑运算符:与 or:逻辑运算符:或 not:逻辑运算符:非 in:身份运算符,判断变量 ...

  6. Python内置函数filter()和匿名函数lambda解析

    一.内置函数filter filter()函数是 Python 内置的一个高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回由符合条件迭代器 ...

  7. Python教程:内置函数filter()和匿名函数lambda解析

    一.内置函数filter filter()函数是 Python 内置的一个高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回由符合条件迭代器 ...

  8. python中的作用域以及内置函数globals()-全局变量、locals()-局部变量

    在python中,函数会创建一个自己的作用域,也称为为命名空间.这意味着在函数内部访问某个变量时,函数会优先在自己的命名空间中寻找. 通过内置函数globals()返回的是python解释器能知道的变 ...

  9. python一些常用函数_【python】常用的一些内置函数

    1.cmp cmp(A,B)函数,比较A,B的大小,如果A大于B,返回1,A小于B返回-1,A等于B返回0 print cmp(12,33) >>>-1 print cmp(&quo ...

最新文章

  1. tkinter安装_mac pyenv 安装tkinter,解决tkinter环境的问题
  2. C-Substring的实现
  3. java int 包_int readInt()
  4. RISC-V CTO: 我们不会像 Arm 和 x86 那样左右芯片的设计
  5. Wi-FiR CC3000 模块
  6. HTML资源嗅探,scrapy-2 嗅探网站,解析HTML
  7. VS2019安装智能提示番茄助手VAssistX
  8. axure rp 9授权码
  9. 使用WebService获取第三方服务数据
  10. PHP内核剖析之FPM
  11. BTA 常问的 Java基础39道常见面试题
  12. BUUCTF 荷兰宽带数据泄露
  13. mantis 邮件配置 linux,Linux系统 mantis 1.0.6工单系统配置安装
  14. ssh publisher_3种Microsoft Publisher的开源替代品
  15. 安卓虚拟摄像头_iPhone 的第四颗摄像头位置,为什么给了激光雷达?
  16. Requests: 1, Fetched: 0, Skipped: 0, Processed: 0
  17. 攻防世界xff和refereer
  18. 前端常见图片格式整理
  19. 如何在IDEA上创建一个Maven项目2022版
  20. 关于 LambdaMART 的六个疑惑

热门文章

  1. 7885CCM服务器网站,排除CPNR中的区域CCM服务器许可证验证警告故障
  2. python图像颜色反转_python – Matplotlib imshow反转2D IFFT数组的颜色
  3. 无人机系列之图传技术
  4. 南昌有什么软件测试专业的学校,高考志愿填报软件走红南昌 专家:软件测试结果“仅供参考”...
  5. 苹果maccmsV8获取豆瓣影评豆瓣ID信息远程图片下载插件
  6. ul中清除所有的li标签
  7. TS项目自动识别types目录下的type.d.ts文件
  8. C++核心准则R.2: 只在接口中表示单独对象使用原始指针​
  9. 工业机械手物料自动分拣系统(Automatic sorting system)安装时需要注意哪些问题?
  10. 在fomc会议中建模主题趋势