国际新闻

国际新闻

当前位置:网站首页 > 国际新闻 > 正文

range函数 range函数用法完全解读

2021-09-21 10:37:36 0

原标题:范围函数用法的完整解释

迭代器是23种设计模式中最常用的一种。在Python中随处可见。我们经常使用它,但不一定意识到它的存在。在一系列关于迭代器的文章中,我提到了至少23种生成迭代器的方法。有些方法是专门用来生成迭代器的,而另一些方法则是“秘密”使用迭代器来解决其他问题。

在系统学习迭代器之前,我一直以为range方法也是用来生成迭代器的,但是现在突然发现它只生成可迭代对象,而不是迭代器!

所以,我有一个问题:为什么范围不生成迭代器?在寻找答案的过程中,我发现对值域类型有一些误解。因此,本文将对范围有一个全面的了解,并期待与您一起学习和进步。

1.什么是范围?

它的语法:range开始是指计数开始值,默认值为0;Stop指计数结束值,但不包括stop;步长是步长,默认为1,不能为0。range方法生成一个左闭右开的整数范围。

也就是说,作为初级生产者,range方法生产的原材料用处很大,早早将其变成迭代器无疑是画蛇添足的行为。

你认为这个解释合理吗?欢迎和我讨论这个话题。

3.范围类型是什么?

以上就是我对“为什么范围不产生迭代器”的回答。顺着这个思路,我研究了它产生的范围对象,发现这个范围对象也不简单。

第一个奇怪的是,它是一个不可变的序列!我从来没有注意到这一点。虽然我从来没有想过改变范围的值,但这个不变的特性让我很惊讶。

翻阅文档,官方的划分是如此清晰——有三种基本的序列类型:列表、元组和范围对象。

我一直没有注意到这一点。原来范围类型是与列表、元组状态相同的基本序列!我一直记得字符串是一个不可变的序列类型,但我从来没有想过这里还有另一个不可变的序列类型。

范围序列和其他序列类型有什么区别?

常见序列支持12种操作。Range序列只支持其中的10个,不支持加法拼接和乘法重复。

那么问题来了:同一个不可变序列,为什么字符串和元组支持上面两个操作,而范围序列不支持?虽然不可变序列不能直接修改,但是我们可以将它们复制到一个新的序列中进行操作。为什么range对象连这个都不支持?

且看官方文件解释:

问题的关键在于音域序列的模式。仔细想想,其实是代表一个等差数列,拼接两个等差数列或者重复拼接一个等差数列。想想真的不合适,这也是range type不支持这两种操作的原因。由此可以推断,其他修改动作也会破坏等差数列结构,所以不应该全部修改。

4.摘要

回顾全文,我得到了两个不受欢迎的结论:range是一个迭代对象,而不是迭代器;range对象是一个不可变的算术序列。

单纯看结论,可能感觉不到,也可能说没什么大不了的。但是如果我问,为什么range不是迭代器,为什么range是不可变序列?对于这两个问题,你还能回答出一个不言自明的设计思路吗?

由于 range 对象这细微而有意思的特性,我觉得这篇文章写得值了。本文是作为迭代器系列文章的一篇来写的,所以对于迭代器的基础知识介绍不多,另外,还有一种特殊的迭代器也值得单独成文,那就是生成器了。

相关推荐

  • 美国战机被中国击落 揭秘这些年被中国击落的美国军机

    美国战机被中国击落 揭秘这些年被中国击落的美国军机

    原标题:揭露这些年被中国击落的美国军机 4月1日,两架美国F-18战斗机在台南机场迫降。据悉,美国海军一批两架F-18大黄蜂战斗机因“异常机械因素”已于1日下午13时向台湾省民航主管部门申请许可,随后紧急降落在台南机场空军...

    09-19 0 0

  • nikezoom系列 NIKE ZOOM全系列点评

    nikezoom系列 NIKE ZOOM全系列点评

    原标题:NIKE ZOOM全系列回顾耐克的运动鞋技术已经达到了完美的水平。在运动鞋的制造上,耐克更偏爱Zoom技术,也就是我们常说的气垫技术。那么耐克Zoom技术有哪些系列呢?这可能不是每个人都清楚的。q6u。com边肖对...

    09-18 0 0

  • 北京的好医院 最新 全北京最好的30家医院 哪家离您最近 还有……

    北京的好医院 最新 全北京最好的30家医院 哪家离您最近 还有……

    原标题:最新!北京30家最好的医院,哪家离你最近?和...我真的很抱歉, 又被全国点名了! 2017中国医院竞争力排名 盛大发布 北京30家医院成功上市 北京30强省份 来看看有哪些医院。 另外,小北给大家带来一份 增值“...

    09-18 0 0

  • 丁辉锦天城 “二本毕业 怎么了 ”

    丁辉锦天城 “二本毕业 怎么了 ”

    原标题:“两个毕业生,怎么回事!”两天前,我的朋友告诉我她在裸辞。 当我听到“裸辞”这个词时,我暗暗钦佩它。 他们都二十多岁。他们没有抵押贷款,需要按时支付租金。当他们赶到裸辞时,他们觉得自己闯出了一条路。 都说换工作要骑...

    09-18 0 0

  • 刹帝利 刹帝利掌握军政大权 为什么地位在婆罗门之下

    刹帝利 刹帝利掌握军政大权 为什么地位在婆罗门之下

    原标题:刹帝利掌握军政大权,为何在婆罗门之下?Yagami90:婆罗门不就是一群宗教祭祀吗?怎么可能凌驾于掌握军政大权的三帝之上?听说古印度王公在结婚入洞房前,要把新娘送去和大祭司睡觉。这怎么能容忍?用世俗的军事和政治力量...

    09-18 0 0

  • 朴振英老婆 原创   48岁朴振英老来得女 二婚妻子小9岁身份神秘 30万创立JYP利润暴涨

    朴振英老婆 原创 48岁朴振英老来得女 二婚妻子小9岁身份神秘 30万创立JYP利润暴涨

    原标题:48岁朴金永,老太太,二太太,小9岁,身份神秘,30万,创始JYP,利润暴涨, 昨天,朴真英在Instagram上晒出了二女儿今天的脚照,宣布她想再次当爸爸。今年48岁的父亲是一位老太太。虽然已经快50岁了,但...

    09-18 0 0

  • 商品导购 月入过万的导购 都是这样介绍产品的....

    商品导购 月入过万的导购 都是这样介绍产品的....

    原标题:月收入过万的导购这样介绍产品....客户在浏览产品时需要一个分析和考虑的过程,现在模态问候在销售交易中不会起到太大的作用。 现在很多导购对产品的基础知识知之甚少,更别说提供服装款式的销售推荐了。 卖有美感的产品和...

    09-18 0 0

  • 如何发干海参 家庭怎么发干海参

    如何发干海参 家庭怎么发干海参

    原标题:家庭如何送干海参美味食品 海参是一种高蛋白、低脂肪、不含胆固醇的食物。其肉质细嫩,易于消化,因此被称为“每补之王”。随着人们生活水平的提高,海参不再是奢侈品消费产品,而是逐渐走向普通人的餐桌,其食疗保健功效也越来越...

    09-18 0 0