`
李灵晖-raylee
  • 浏览: 129705 次
博客专栏
Group-logo
从头认识java
浏览量:0
文章分类
社区版块
存档分类
最新评论

零基础学python-12.4 while、for与range联合使用

 
阅读更多

1.range,它是一个迭代器,里面有三个参数,分别代表开始数、结束数和步进

我们下面用list方法把range里面的数字列出来

>>> list(range(5))
[0, 1, 2, 3, 4]
>>> list(range(-5,5))
[-5, -4, -3, -2, -1, 0, 1, 2, 3, 4]
>>> list(range(-5,5,2))
[-5, -3, -1, 1, 3]
>>> 

range(x)里面只有一个整数,代表从0开始,到x-1的连续整数列表

range(x,y)里面有两个参数,代表从x开始,到y-1的连续整数列表

range(x,y,z)里面有三个参数,代表从x开始,到y-1的以步进是z的整数列表


2.range经常与for连在一起使用

>>> for x in range(3):
	print(x)

	
0
1
2
>>> 

上面的代码等价换成while的

>>> x=0
>>> while x<3:
	print(x)
	x=x+1

	
0
1
2
>>> 

3.range也常常间接迭代一个序列

>>> for x in 'abcd':
	print(x)

	
a
b
c
d
>>> 
上面的例子其实python已经处理了大部分的迭代细节,如果换成while来实现,就更加清楚的展现迭代的过程

>>> string='abcd'
>>> x=0
>>> while True:
	lenOfStr=len(string)
	if a==lenOfStr:
		break
	else:print(string[a])
	a=a+1

	
a
b
c
d
>>> 

我们再把上面的例子换成for+range的实现

>>> for x in range(len(string)):
	print(string[x])

	
a
b
c
d
>>> 


相对来说代码简洁了一些,但是最好的方法还是第一种,python已经为我们隐藏了很多实现细节


下面我们最后来说一下使用步进读取

>>> a='abcdefg'
>>> for x in range(0,len(a),2):
	print(x)

	
0
2
4
6
>>> for x in range(0,len(a),2):
	print(a[x])

	
a
c
e
g
>>> 




这一章节主要简述了while和range各自的应用,还展示了for与range的使用


这一章节就说到这里,谢谢大家

------------------------------------------------------------------

点击跳转零基础学python-目录





版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    Python 核心编程 第二版

     2.13 for循环和range()内建函数   2.14 列表解析   2.15 文件和内建函数open()、file()   2.16 错误和异常   2.17 函数   2.18 类   2.19 模块   2.20 实用的函数   2.21 练习  ...

    Python Cookbook英文版

    Python Cookbook英文版 Table of Contents Foreword Preface 1. Python Shortcuts 1.1 Swapping Values Without Using a Temporary Variable 1.2 Constructing a Dictionary Without Excessive Quoting 1.3...

    python3.6.5参考手册 chm

    Python参考手册,官方正式版参考手册,chm版。以下摘取部分内容:Navigation index modules | next | Python » 3.6.5 Documentation » Python Documentation contents What’s New in Python What’s New In ...

    Python Cookbook, 2nd Edition

    Calculating Time Periods in a Date Range Recipe 3.4. Summing Durations of Songs Recipe 3.5. Calculating the Number of Weekdays Between Two Dates Recipe 3.6. Looking up Holidays Automatically ...

    Python核心编程第二版

     第3章 Python基础   3.1 语句和语法   3.1.1 注释(#)   3.1.2 继续(\)   3.1.3 多个语句构成代码组(:)   3.1.4 代码组由不同的缩进分隔   3.1.5 同一行书写多个语句(;)   3.1.6 ...

    Python核心编程第二版(ok)

     第3章 Python基础   3.1 语句和语法   3.1.1 注释(#)   3.1.2 继续()   3.1.3 多个语句构成代码组()   3.1.4 代码组由不同的缩进分隔   3.1.5 同一行书写多个语句(;)   3.1.6 模块...

    Python核心编程(第二版).pdf (压缩包分2部分,第二部分)

     第3章 python基础   3.1 语句和语法   3.1.1 注释(#)   3.1.2 继续(\)   3.1.3 多个语句构成代码组(:)   3.1.4 代码组由不同的缩进分隔   3.1.5 同一行书写多个语句(;)   3.1.6 ...

    Python核心编程(第二版).pdf (压缩包分2部分,第一部分)

     第3章 python基础   3.1 语句和语法   3.1.1 注释(#)   3.1.2 继续(\)   3.1.3 多个语句构成代码组(:)   3.1.4 代码组由不同的缩进分隔   3.1.5 同一行书写多个语句(;)   3.1.6 ...

    ruby语法基础教程

    ruby语法基础教程,比较全的。 目 录 Ruby语言 1 Grant Ren 1 第一部分 Ruby语言基础 8 第一章 Ruby语言概述 8 §1.1 Ruby的历史 8 §1.2 Ruby名字的由来 8 §1.3 Ruby的特点 8 §1.4 Ruby和Python的比较 9 第二章...

    RED HAT LINUX 6大全

    12.4 配置NIS从服务器 231 12.5 在/etc/passwd文件中使用NISisms 232 12.6 使用网络组 232 12.7 解决问题的一些技巧 233 12.8 小结 233 第13章 网络文件系统 235 13.1 NFS安装 235 13.2 启动和停止NFS守护程序 236 ...

Global site tag (gtag.js) - Google Analytics