Python3基础9——range()函数

Python3 range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表

list() 函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。

函数语法:range(start,end,[step])

参数含义:start:计数从start开始。默认是从0开始。例如range(5)等价于range(0, 5);

end:计数到end结束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5

step:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

range(m,n,k) m头,默认为0; n尾 ;k步长默认为1,取头不取尾;

当步长为正,头大于尾,即m>n,k>0,返回为空,例如:range(6,1,2)

当步长为负,头小于尾,即m<n,k<0,返回为空,例如:range(0,6,-1)

正序排序:

1 range(1,5,1)
2 <<< 1,2,3,4,5
3 range(1,6,2)
4 <<< 1,3,5

倒序排列,如果是list,可以直接用reversed(seq),seq -- 要转换的序列,可以是 tuple, string, list 或 range:

 1 range(6,0,-1)
 2 <<< 6,5,4,3,2,1
 3 range(0,-5,-2)
 4 <<< 0,-2,-4
 5
 6 a = [1,2,3,4,5]
 7 for x in reversed(a):
 8      print x
 9 <<< 5,4,3,2,1
10
11 a = [1,2,3,4,5]
12 for x in range(len(a)-1,-1,-1):
13     print(a[i])
14 <<< 5,4,3,2,1

解释:len(a)是5,所以range的表达式实际上是range(4,-1,-1)。即[4,-1),步长是-1,也就是说4是开始并包含在里面,所以要len(a)-1,然后-1是3,然后是2,然后是1,然后是0,-1是结尾,但不包含。所以输出是a[4],a[3],a[2],a[1],a[0],这样就做到了从尾到头便利list。

切片:

1 L = [1, 2, 3]
2 print(L(0:2:-1))
3 <<< [3, 2, 1]
4 print(L(::-1))
5 <<< [3, 2, 1]

原文地址:https://www.cnblogs.com/monica711/p/9804648.html

时间: 2024-11-10 14:13:30

Python3基础9——range()函数的相关文章

python3中的range函数返回的是列表吗?

注意,这里说的Python3里面的range函数,和Python2是不同的,返回的不是列表,是可迭代对象. 在python3中,如果执行下面的语句 print(range(10)) 得到结果是 range(0,10) ,而不是期望的[0,1,2,3,4,5,6,7,8,9].但是如果换一种方式 print(list(range(10))) 得到的结果却是 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 那为什么会这样呢?其实在Python3中range()函数返回的对象很像一个列表

python3中的range函数

奇怪的现象 在paython3中 print(range(10)) 得出的结果是 range(0,10) ,而不是[0,1,2,3,4,5,6,7,8,9] ,为什么呢? 官网原话: In many ways the object returned by range() behaves as if it is a list, but in fact it isn’t. It is an object which returns the successive items of the desire

Python3基础 sum,range 计算1到100的和

镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ 1 code 1 aCollection=range(1,101,1) 2 3 print(sum(aCollection)) 2 show ------------------------------------------博文的精髓,在技术部分,更在镇场一诗.Python是优秀的语言,值得努力

Python3基础 内嵌函数 简单示例

? ???????Python : 3.7.0 ?????????OS : Ubuntu 18.04.1 LTS ????????IDE : PyCharm 2018.2.4 ??????Conda : 4.5.11 ???typesetting : Markdown ? code """ @Author : 行初心 @Date : 18-9-24 @Blog : www.cnblogs.com/xingchuxin @Gitee : gitee.com/zhichengji

Python3基础 内置函数 id

? ???????Python : 3.7.3 ?????????OS : Ubuntu 18.04.2 LTS ????????IDE : pycharm-community-2019.1.3 ??????Conda : 4.7.5 ???typesetting : Markdown ? code [email protected]:~$ source activate py37 (py37) [email protected]:~$ ipython Python 3.7.3 (default

6.python基础--range()函数

1.定义: range()函数是python的内置函数,用来创建算数级数序列的通用函数,返回一个[start, start + step, start + 2 * step, ...]结构的整数序列. 2.语法: range(start,stop[,step]) start 指的是计数起始值,默认是 0: stop 指的是计数结束值,但不包括 stop :例如,range(0,5)就是只有0,1,2,3,4而没有5. step 是步长,默认为 1,不可以为 0 .range() 方法生成一段左闭

Python3 基础 —— 模块 Module 介绍

1.模块的作用 在交互模式下输出的变量和函数定义,一旦终端重启后,这些定义就都不存在了,为了持久保存这些变量.函数等的定义,Python中引入了模块(Module)的概念.一个Python模块其实就是一个脚本文件,具有后缀".py",例如 hello.py 就是一个模块文件名,和普通文件一样可以被永久保存在本地存储磁盘中. 2.模块的内容 Python模块中存放的是一些程序代码,例如,变量定义.函数定义或是代码语句.下面是hello.py模块的内容,其中有一个变量 a,一个函数 fun

Python基础--Python3基础语法

Python3 基础语法 编码 默认情况下,Python3源码文件以UTF-8编码,所有字符串都是Unicode字符串.当然也可以为源码文件指定不同的编码,例如: # -*- coding: cp-1252 -*- 标识符 1.第一个字符必须是字母表中字母或下划线: 2.标识符的其他的部分有字母.数字和下划线组成: 3.标识符对大小写敏感. 注:在Python3中,非ASCII标识符也是允许的. Python保留字 保留字即关键字,我们不能把它们用作任何标识符名称.Python的标准库提供了一个

Python基础:Python函数、文件操作、递归

函数参数 函数参数包括位置参数,关键字参数,动态参数(*args, **args)三种. 传参的过程是形式参数的赋值. *args传入的参数是元组形式,**args传入的参数是字典形式. 示例代码如下:(这部分直接看代码实例会更清楚静态参数与动态参数如何混用) 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # def story(**kwargs): 4 # return 'Once upon a time,there was a ' 5