本文讨论Python下的数值列表 - range(x,y,z)函数的应用,并分析其计数过程.

本文节选自作者的《Python编程基础及应用》视频教程。Python编程基础及应用_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com

1. range(x)、range(x,y)

print("output of range(5):")

for i in range(5):

print(i)

print("output of range(2,5):")

for x in range(2,5):

print(x)

执行结果:

output of range(5):

0

1

2

3

4

output of range(2,5):

2

3

4

range(x,y)在解释器内部并不是一个严格意义上的列表,而是一个称为range的不常用的数据类型。如下述代码所示:

#rangelist2.py

x = range(5)

print(x[2])

print(x)

print(type(x))

执行结果:

2

range(0, 5)

如果真的需要把range转换成列表,可以通过类型转换实现:

#range2list.py

x = range(5)

x = list(x)

print(type(x),x)

执行结果:

[0, 1, 2, 3, 4]

2. range(x,y,z)

更复杂的range形式:

#fours.py

fours = list(range(0,17,4))

print(fours)

执行结果:

[0, 4, 8, 12, 16]

3 理解range计数过程

读者或许对range(x,y,z)的输出结果感到疑惑,看看下面这个流程图。

现以range(0,17,4)为例,依上述流程图说明输出集合为什么是[0,4,8,12,16]。首先,计数取值x=0,然后开始循环:

- 0 < 17,输出0;

- 计数 = 0 + 4 = 4;

- 4 < 17,输出4;

- 计数 = 4 + 4 = 8;

- 8 < 17, 输出8;

- 计数 = 8 + 4 = 12;

- 12 < 17, 输出12;

- 计数 = 12 + 4 = 16;

- 16 < 17, 输出16;

- 16 + 4 = 20;

- 20 < 17不满足,循环结束。

如果你有C/C++经验,下述代码更容易描述range(x,y,z)的计数过程,事实上,Python的解释器就是用C/C++编写的。

for (int i=x;i

output(i);

}

上述range(x,y,z),如果z<0,相应流程图如下:

作者试了试如下代码:

numbers = list(range(9,2,-2))

print(numbers)

执行结果:

[9, 7, 5, 3]

该你了,请依上述流程图,人肉执行range(9,2,-2)的计数过程,验证上述输出。

如果你有C/C++经验,下面的代码能更容易地解释z小于0时range(9,2,-2)的计数过程:

for (int i=x;i>y;i+=z){

output(i);

}

本文节选自作者的《Python编程基础及应用》视频教程。想完整零基础学习Python程序设计,欢迎使用此免费视频教程。Python编程基础及应用_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com

版权声明 本文可以在互联网上自由转载,但必须:注明出处(作者:海洋饼干叔叔)并包含指向本页面的链接。 本文不可以以纸质出版为目的进行改编、摘抄。

python x y z 1_Python下的数值列表 - range(x,y,z)函数相关推荐

  1. python和R数据类型查看、赋值、列表、for循环、函数用法对比示例

    python和R数据类型查看.赋值.列表.for循环.函数用法对比示例 很多工程师可能刚开始的时候只熟悉python或者R其中的一个进行数据科学相关的任务. 那么如果我们对比这学习可以快速了解语言设计 ...

  2. echarts实现多y轴情况下多个元素共用一个y轴

    要求:风速和阵风共用风速这条y轴 核心:echarts的yAxisIndex属性 yAxisIndex:使用的 y 轴的 index,在单个图表实例中存在多个 y轴的时候有用 比如阵风要和风速共用一条 ...

  3. python点击屏幕坐标_通过Python,如何获取鼠标在屏幕上的X、Y轴坐标点

    最近在开发基于模拟器的微信自动添加好友工具时,需要获取模拟器中相应按钮,在当前屏幕中的X.Y轴坐标点.先前都是通过"Ctrl+Alt+A"截屏的方式 获取.如下图红框部分所示: 由 ...

  4. python作业第五例:输入三个整数x,y,z,请把这三个数由小到大输出。

    输入三个整数,比较其大小然后按从小到大的顺序输出,需要进行两两之间的比较,判断其大小. 采用交换值的方法 ,令最大值为x,中间值为y,最小值为z 第一种:x>y>z,则满足上述条件,直接输 ...

  5. python提供了两种基本的数值类型_python数据分析(一) python当中的数据类型--数字和常用函数...

    python当中内置了多种数据类型,了解python内置的基本数据类型,有助于进行进行数据处理.第一篇我们将介绍python当中的数字. 我们将介绍每一种数字类型,他们适用的操作符,以及用于处理的内建 ...

  6. Python基本语法_基本数据类型_数值型详解

    目录 目录 软件环境 Python变量调用的过程 数值型 删除一个数值类型对象 布尔型 Bool 标准整型 Int 长整型 双精度浮点型 Float 复数 数值类型对象的内建功能函数 absNumbe ...

  7. python将数值进行关联_小疯谈python:(三)数据类型之数值类型

    在上一篇文章中,我简单介绍了python中的语法元素,通过了解基本的数据元素,我们可以阅读一些简单的python代码,但是这还远远不够,要想了解复杂的代码,我们还要深入学习.今天,我将开始为各位小伙伴 ...

  8. python提供了两种基本的数值类型_Python 基本数据类型

    Python 基本数据类型 Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型&q ...

  9. Python语言快速入门(下)

    前言 本图文是本期图文的下篇,可能篇幅较长大概有10000多字,很高兴您能阅读,也感谢您的关注支持!这期下篇主要还是接着上次的内容继续,在上篇中我介绍了关于Python环境的安装.基本数据处理.输入输 ...

最新文章

  1. 关于命名空间namespace
  2. 并行处理的类型与CPU/GPU架构
  3. CV之FE:基于TF进行FE——去除异常(被损坏)图像 和单通道图像
  4. 【项目实战课】NLP入门第1课,人人免费可学,基于TextCNN的新闻文本分类实战...
  5. ICLR 2022 | 从因果不变性视角探讨图神经网络的分布外泛化鲁棒性
  6. 201671010456-张琼 实验十四 团队项目评审课程学习总结
  7. python爬取小说出现乱码_详解Python解决抓取内容乱码问题(decode和encode解码)
  8. js正则表达式验证密码
  9. python集合排序_numpy排序与集合运算用法示例
  10. Android studio 的那些坑
  11. python xml转excel_使用python脚本将XML 电子表格转变为Excel
  12. 通过 bitbang GPIO来实现i2c总线协议
  13. 苹果电脑(Mac)如何进行大小写和中英文的切换
  14. winpe安装win7教程
  15. 在Outlook中使用Notes功能的入门指南
  16. python剪切文件_python剪切文件 - osc_42713235的个人空间 - OSCHINA - 中文开源技术交流社区...
  17. 曲奇的ndnSIM API教程翻译 命名数据网络 NDN ndn simulator
  18. SIGSEGV (Segmentation fault)
  19. 网络存储(NAS)在智能家居中的地位
  20. 消防栓信息计算机管理系统,智能消防栓监控系统

热门文章

  1. 语言中如何在main函数开始前执行函数
  2. mybatis一级缓存导致sql查询出现问题
  3. Scala学习教程笔记二之函数式编程、Object对象、伴生对象、继承、Trait、
  4. qt5.5.1配置winpcap4.1.2
  5. d029: 求出2-100之间的所有质数(素数)
  6. POJ 1860 Currency Exchange (Bellman-Ford)
  7. 在Delphi中根据SQL Server表名和表描述生成SQL语句
  8. 谷歌地图最新hosts_如何查看2020最新版谷歌地球高精度卫星地图(附下载方法)...
  9. Eclipse 的IOConsole Updater error
  10. 《HeadFirst设计模式》笔记