python快速入门【三】-----For 循环、While 循环
python入门合集:
python快速入门【一】-----基础语法
python快速入门【二】----常见的数据结构
python快速入门【三】-----For 循环、While 循环
python快速入门【四】-----各类函数创建
python快速入门【五】---- 面向对象编程
python快速入门【六】----真题测试
For 循环
For循环是迭代对象元素的常用方法(在第一个示例中,列表)
具有可迭代方法的任何对象都可以在for循环中使用。
python的一个独特功能是代码块不被{} 或begin,end包围。相反,python使用缩进,块内的行必须通过制表符缩进,或相对于周围的命令缩进4个空格。
虽然这一开始可能看起来不直观,但它鼓励编写更易读的代码,随着时间的推移,你会学会喜欢它
In [1]
#取第一个列表成员(可迭代),暂称它数字(打印它)
#取列表的第二个成员(可迭代),暂时将其称为数字,等等......for number in [23, 41, 12, 16, 7]: print(number)
print('Hi')
23
41
12
16
7
Hi
枚举
返回一个元组,其中包含每次迭代的计数(从默认为0开始)和迭代序列获得的值:
In [2]
friends = ['steve', 'rachel', 'michael', 'adam', 'monica']
for index, friend in enumerate(friends):print(index,friend)
0 steve
1 rachel
2 michael
3 adam
4 monica
Task
从文本中删除标点符号并将最终产品转换为列表:
On a dark desert highway, cool wind in my hair Warm smell of colitas, rising up through the air Up ahead in the distance, I saw a shimmering light My head grew heavy and my sight grew dim I had to stop for the night There she stood in the doorway; I heard the mission bell And I was thinking to myself, "This could be Heaven or this could be Hell" Then she lit up a candle and she showed me the way
(加州旅馆)
In [3]
text = '''On a dark desert highway, cool wind in my hair Warm smell of colitas, rising up through the air Up ahead in the distance, I saw a shimmering light My head grew heavy and my sight grew dim I had to stop for the night There she stood in the doorway; I heard the mission bell And I was thinking to myself, "This could be Heaven or this could be Hell" Then she lit up a candle and she showed me the way'''
In [4]
print(text)
On a dark desert highway, cool wind in my hair Warm smell of colitas, rising up through the air Up ahead in the distance, I saw a shimmering light My head grew heavy and my sight grew dim I had to stop for the night There she stood in the doorway; I heard the mission bell And I was thinking to myself, "This could be Heaven or this could be Hell" Then she lit up a candle and she showed me the way
基本上,任何具有可迭代方法的对象都可以在for循环中使用。即使是字符串,尽管没有可迭代的方法 - 但我们不会在这里继续。具有可迭代方法基本上意味着数据可以以列表形式呈现,其中有序地存在多个值。
In [5]
for char in '-.,;\n"\'':text = text.replace(char,' ')
print(text)
On a dark desert highway cool wind in my hair Warm smell of colitas rising up through the air Up ahead in the distance I saw a shimmering light My head grew heavy and my sight grew dim I had to stop for the night There she stood in the doorway I heard the mission bell And I was thinking to myself This could be Heaven or this could be Hell Then she lit up a candle and she showed me the way
In [6]
# Split converts string to list.
# Each item in list is split on spaces
text.split(' ')[0:20]
['On','a','dark','desert','highway','','cool','wind','in','my','hair','Warm','smell','of','colitas','','rising','up','through','the']
In [7]
# Dont want to have non words in my list for example ''
# which in this case are things of zero length
len('')
0
In [8]
# Making new list with no empty words in it
cleaned_list = []
In [9]
for word in text.split(' '): word_length = len(word)if word_length > 0:cleaned_list.append(word)
In [10]
cleaned_list[0:20]
['On','a','dark','desert','highway','cool','wind','in','my','hair','Warm','smell','of','colitas','rising','up','through','the','air','Up']
Continue
continue语句将转到循环的下一次迭代
continue语句用于忽略某些值,但不会中断循环
In [11]
cleaned_list = []for word in text.split(' '): if word == '':continuecleaned_list.append(word)
cleaned_list[1:20]
['a','dark','desert','highway','cool','wind','in','my','hair','Warm','smell','of','colitas','rising','up','through','the','air','Up']
Break
break语句将完全打断循环
In [12]
cleaned_list = []
In [13]
for word in text.split(' '): if word == 'desert':print('I found the word I was looking for')breakcleaned_list.append(word)
cleaned_list
I found the word I was looking for
['On', 'a', 'dark']
Task (顺道介绍一下Range函数)
- 编写一个Python程序,它迭代整数从1到50(使用for循环)。对于偶数的整数,将其附加到列表even_numbers。对于奇数的整数,将其附加到奇数奇数列表中
In [14]
# Making empty lists to append even and odd numbers to.
even_numbers = []
odd_numbers = []for number in range(1,51):if number % 2 == 0:even_numbers.append(number)else: odd_numbers.append(number)
In [15]
print("Even Numbers: ", even_numbers)
Even Numbers: [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]
In [16]
print("Odd Numbers: ", odd_numbers)
Odd Numbers: [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49]
Python 2 vs Python 3 (Range函数的不同点)
python 2 xrange and python 3 range are same (resembles a generator) python 2 range生成一个list
注意: 较长的列表会很慢
更多参考: http://pythoncentral.io/pythons-range-function-explained/
While 循环
For 循环 | While 循环 |
---|---|
遍历一组对象 | 条件为false时自动终止 |
没有break也可以结束 | 使用break语句才能退出循环 |
如果我们希望循环在某个时刻结束,我们最终必须使条件为False
In [1]
# Everytime through the loop, it checks condition everytime until count is 6
# can also use a break to break out of while loop.
count = 0
while count <= 5:print(count)count = count + 1
0
1
2
3
4
5
break语句
使用break可以完全退出循环
In [2]
count = 0
while count <= 5:if count == 2:breakcount += 1print (count)
1
2
while True条件使得除非遇到break语句,否则不可能退出循环
如果您陷入无限循环,请使用计算机上的ctrl + c来强制终止
In [3]
num = 0
while True:if num == 2:print('Found 2')breaknum += 1print (num)
1
2
Found 2
提醒:使用模运算符(%),它将数字左边的余数除以右边的数字
In [4]
# 1 divided by 5 is 0 remainder 1
1 % 5
1
In [5]
# 5 divided by 5 is 0 remainder 0
5 % 5
0
比较操作符 | 功能 |
---|---|
< | 小于 |
<= | 小于或等于 |
| 大于 = | 大于或等于 == | 等于 != | 不等于
In [6]
x = 1
while x % 5 != 0:x += 1print(x)
2
3
4
5
当我们知道要循环多少次时,Range很有用
下面例子是: 从0开始,但不包括5
In [7]
candidates = list(range(0, 5))
candidates
[0, 1, 2, 3, 4]
In [8]
while len(candidates) > 0: first = candidates[0]candidates.remove(first)print(candidates)
[1, 2, 3, 4]
[2, 3, 4]
[3, 4]
[4]
[]
python快速入门【三】-----For 循环、While 循环相关推荐
- python快速入门第三版-Python 快速入门:第3版 配套资源 PDF 完整版
给大家带来的一篇关于Python入门相关的电子文档资源,介绍了关于Python.快速入门方面的内容,本书是由Python官网出版,格式为PDF,资源大小23 MB,码小辫编写,目前豆瓣.亚马逊.当当. ...
- python快速编程入门教程-半小时带你快速入门Python编程,Python快速入门教程
1,Introduction to Python (Python入门) 2,Python是什么? Python 官方网站的描述 Python is a programming language tha ...
- python的快速入门-Python快速入门,你想要的就在这里了!
原标题:Python快速入门,你想要的就在这里了! 学习Python您是否会面临以下问题?"网上充斥着大量的学习资源.书籍.视频教程和博客,但是大部分都是讲解基础知识,不够深入:也有的比较晦 ...
- python快速入门 pdf-Python快速入门 (第3版) PDF 下载
相关截图: 资料简介: 这是一本Python快速入门书,基于Python 3.6编写.本书分为4部分,*部分讲解Python的基础知识,对Python进行概要的介绍:第二部分介绍Python编程的重点 ...
- 简单比较python语言和c语言的异同-Python快速入门之与C语言异同
原标题:Python快速入门之与C语言异同 代码较长,建议使用电脑阅读本文. 10分钟入门Python 本文中使用的是Python3如果你曾经学过C语言,阅读此文,相信你能迅速发现这两种语言的异同,达 ...
- 【机器学习】Python 快速入门笔记
Python 快速入门笔记 Xu An 2018-3-7 1.Python print #在Python3.X中使用print()进行输出,而2.x中使用()会报错 print("he ...
- python快速入门【四】-----各类函数创建
python入门合集: python快速入门[一]-----基础语法 python快速入门[二]----常见的数据结构 python快速入门[三]-----For 循环.While 循环 python ...
- Python 快速入门学习
Python 快速入门学习 python的基本语法 1.1 变量 1.12 如何定义变量 1.13 输出一个变量 1.14 变量的数据类型 1.15 变量的运算 1.16 变量的输入 1.17 变量的 ...
- python快速入门【五】---- 面向对象编程、python类
python入门合集: python快速入门[一]-----基础语法 python快速入门[二]----常见的数据结构 python快速入门[三]-----For 循环.While 循环 python ...
最新文章
- [转]hibernate------HQL总结
- openCV 图像相加,位运算,协方差,绝对值,比较
- 【Ubuntu入门到精通系列讲解】常用 Linux 命令的基本使用
- ubuntu下安装交叉编译的环境脚本
- 与粉丝们互动,街头霸王乐队带来AR应用《Gorillaz》
- jdbc pdf_JDBC教程– ULTIMATE指南(PDF下载)
- 什么?你的电商网页不够时尚?看这里
- 老式Windows桌面的终结:Windows 11来了,DaaS还会远吗?
- 搭建redis主从复制,遇到的问题总结
- 像“钢铁侠”埃隆·马斯克那样,成为超速学习者
- 如何更新服务器系统教程,服务器操作系统如何更新
- 论文笔记《Combining Events and Frames Using Recurrent Asynchronous Multimodal Networks for Monocular ...》
- 使用API函数 GetACP 获取Windows系统当前代码页(字符编码)
- python基础语法测评_Python基础语法测评(A1卷)
- 解决IE6、IE8 宽度兼容
- 2维旋转矩阵的推导方式
- 从QuickTime到Beats:回顾苹果历史上的音乐传奇
- 编解码学习笔记(基础)
- 某省公共资源交易电子公共服务平台学习案例
- 软件工程---习题九
热门文章
- 个人腾讯云服务器的搭建
- Android 蓝牙连接,蓝牙配对,自动连接蓝牙
- 教程篇(6.0) 01. FortiGate及其Security Fabric介绍 ❀ FortiGate 安全 ❀ Fortinet 网络安全专家 NSE 4
- PHP绘制正方形印章,php画图实现中文圆形印章
- Linux基础, 基础命令, 基于公钥的免密登录
- 百度离线地图开发,node实现地图瓦片下载
- win10环境编译支持xp的libcurl+openssl踩过的坑
- yocto运行时依赖规则
- DOS重装win7系统
- 如何在html添加悬浮页面,如何设置悬浮窗口?