[Python3]循环控制

概述

本节我们主要介绍Python中的循环控制的使用。

for循环

在Python中for循环可以遍历任何序列,例如元组、列表、字符串、字典、集合等等。

先看下for循环的一般格式:

for 变量 in 序列:
    # 代码块
else:    

    # 代码块
    # 通常情况下,我们不用else
  • 遍历元组

我们看下用for循环如何进行元组遍历输出:

# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    #  for元组遍历
    tuple_1 = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)

    print(u"遍历元组,并打印出来: ")
    for t in tuple_1:
        print(t)

运行结果如下:

遍历元组,并打印出来:
1
2
3
4
5
6
7
8
9
0
  • 遍历列表

我们看下用for循环如何进行列表遍历输出:

# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    #  for列表遍历
    list_1 = [u‘博客园‘, u‘谷白‘, u‘Python3‘]

    print(u"遍历列表,并打印出来: ")
    for text in list_1:
        print(text)

运行结果如下:

遍历列表,并打印出来:
博客园
谷白
Python3
  • 遍历字典
    下面一起看看遍历字典的两种方式:
# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    #  for字典遍历
    dict_1 = {u"博客园": u"cnblog", u"谷白": u"Python3"}

    print(u"遍历字典方式一,并打印出来: ")
    for (key, value) in dict_1.items():
        print("%s : %s " % (key, value))

    print("\n-----------------------------")

    print(u"遍历字典方式二,并打印出来: ")
    for key in dict_1:
        print("%s : %s " % (key, dict_1[key]))

执行结果如下:

遍历字典方式一,并打印出来:
谷白 : Python3
博客园 : cnblog 

-----------------------------
遍历字典方式二,并打印出来:
谷白 : Python3
博客园 : cnblog 
  • 结合range()函数使用 本节说明下如何结合range函数来使用。
    range(start, end, step)
    功能说明:以指定步长生成一个指定范围的数值序列
    参数说明: start: 数值序列的起始数值(默认为0) end: 数值序列的终止数值 step : 数值序列中数值的间距(默认为1)

注:range生成的序列半闭半开区间

我们看一个实例如下:

# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    print(u"range for循环实例")    

    # 使用默认参数生成序列进行遍历
    for i in range(5):
        print(i, end=‘,‘)    

    # 换行
    print(‘‘)    

    # 指定范围生成序列进行遍历
    for i in range(0, 10):
        print(i, end=‘,‘)    

    # 换行
    print(‘‘)    

    # 带步长方式生成序列进行遍历
    for i in range(0, 10, 2):
        print(i, end=‘,‘)

执行结果如下:

range for循环实例
0,1,2,3,4,
0,1,2,3,4,5,6,7,8,9,
0,2,4,6,8,

嵌套

下面我们一起看两个for语句实现九九乘法表:

# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    print(u"九九乘法表:")
    for i in range(1, 10):
        for j in range(i, 10):
            print(u"%d * %d = %2d" % (i, j, i * j), end="  ")

        print("")

执行结果如下:

九九乘法表:
1 * 1 =  1  1 * 2 =  2  1 * 3 =  3  1 * 4 =  4  1 * 5 =  5  1 * 6 =  6  1 * 7 =  7  1 * 8 =  8  1 * 9 =  9
2 * 2 =  4  2 * 3 =  6  2 * 4 =  8  2 * 5 = 10  2 * 6 = 12  2 * 7 = 14  2 * 8 = 16  2 * 9 = 18
3 * 3 =  9  3 * 4 = 12  3 * 5 = 15  3 * 6 = 18  3 * 7 = 21  3 * 8 = 24  3 * 9 = 27
4 * 4 = 16  4 * 5 = 20  4 * 6 = 24  4 * 7 = 28  4 * 8 = 32  4 * 9 = 36
5 * 5 = 25  5 * 6 = 30  5 * 7 = 35  5 * 8 = 40  5 * 9 = 45
6 * 6 = 36  6 * 7 = 42  6 * 8 = 48  6 * 9 = 54
7 * 7 = 49  7 * 8 = 56  7 * 9 = 63
8 * 8 = 64  8 * 9 = 72
9 * 9 = 81  

while循环

先来看下while循环的一般语法形式:

while 条件:    # 代码块

要注意的是,在Python中没有do...while循环语句。

下面我们用while循环语句来计算0-100所有的偶数和:

# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    print(u"计算0-100间所有偶数和")

    n = 100
    index = 0
    sum = 0
    while index <= n:
        sum = sum + index
        index = index + 2

    print(u"0-100间偶数和= %d " % sum)

结果如下:

计算0-100间所有偶数和
0-100间偶数和= 2550 

while和for综合使用

下面我们用while和for结合一起尝试实现一个九九乘法表:

# -*- coding:utf-8 -*-

__author__ = u‘谷白‘

if __name__ == "__main__":
    print(u"九九乘法表实例:")
    n = 1

    while n <= 9:
        for m in range(n, 10):
            print(u"%d * %d = %2d" % (n, m, n*m), end="  ")

        print("")
        n = n + 1

运行结果如下:

九九乘法表实例:
1 * 1 =  1  1 * 2 =  2  1 * 3 =  3  1 * 4 =  4  1 * 5 =  5  1 * 6 =  6  1 * 7 =  7  1 * 8 =  8  1 * 9 =  9
2 * 2 =  4  2 * 3 =  6  2 * 4 =  8  2 * 5 = 10  2 * 6 = 12  2 * 7 = 14  2 * 8 = 16  2 * 9 = 18
3 * 3 =  9  3 * 4 = 12  3 * 5 = 15  3 * 6 = 18  3 * 7 = 21  3 * 8 = 24  3 * 9 = 27
4 * 4 = 16  4 * 5 = 20  4 * 6 = 24  4 * 7 = 28  4 * 8 = 32  4 * 9 = 36
5 * 5 = 25  5 * 6 = 30  5 * 7 = 35  5 * 8 = 40  5 * 9 = 45
6 * 6 = 36  6 * 7 = 42  6 * 8 = 48  6 * 9 = 54
7 * 7 = 49  7 * 8 = 56  7 * 9 = 63
8 * 8 = 64  8 * 9 = 72
9 * 9 = 81  

break&continue

  • break
    break语句用于控制跳出for或while循环体
  • continue
    continue语句用于跳出当前循环块中剩余的代码语句,继续下一次循环执行。

对于break和continue语句的使用本节不做任何示例演示,请自行去研究和实践。

时间: 2024-10-14 06:20:37

[Python3]循环控制的相关文章

python013 Python3 循环语句

Python3 循环语句本章节将为大家介绍Python循环语句的使用.Python中的循环语句有 for 和 while.Python循环语句的控制结构图如下所示: while 循环Python中while语句的一般形式: while 判断条件: 语句 同样需要注意冒号和缩进.另外,在Python中没有do..while循环. 以下实例使用了 while 来计算 1 到 100 的总和:实例 #!/usr/bin/env python3 n = 100 sum = 0 counter = 1 w

ubuntu下卸载python2和升级python3.5

卸载python只需一条语句就可以实现 sudu apt-get remove python ubuntu下安装python3 sudo apt-get install python3 但这样只安装了python3.4 要想使用python3.5,则必须升级python3.4 sudo add-apt-repository ppa:fkrull/deadsnakes sudo apt-get update sudo apt-get install python3.5 使用以上三行命令便可升级py

python3 装饰器

看廖雪峰官网的python3装饰器有感 装饰器即将一个函数作为变量在新的函数中调用此函数. 作业: 能否写出一个@log的decorator,使它既支持: @logdef f():     pass 又支持: @log('execute')def f():     pass      例1: import functools import time def log(*args,**kwargs):     # *args 是个元组     if args and isinstance(args,

Python3 - MySQL适配器 PyMySQL

本文我们为大家介绍 Python3 使用 PyMySQL 连接数据库,并实现简单的增删改查. 什么是 PyMySQL? PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb. PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库. PyMySQL 安装 在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装. PyMySQL 下载地址:https

1.5编程基础之循环控制_29:数字反转

/* 1.5编程基础之循环控制 29:数字反转 总时间限制: 1000ms 内存限制: 65536kB 描述 给定一个整数,请将该数各个位上数字反转得到一个新数. 新数也应满足整数的常见形式,即除非给定的原数为零, 否则反转后得到的新数的最高位数字不应为零(参见样例2). 输入 输入共 1 行,一个整数N. -1,000,000,000 ≤ N≤ 1,000,000,000. 输出 输出共 1 行,一个整数,表示反转后的新数. 样例输入 样例 #1: 123 样例 #2: -380 样例输出 样

Python3 数字(Number)

1.Python 数字数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间. 2.Python 支持三种不同的数值类型: 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点.Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型. 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102

8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,循环控制及其优化

上两篇博客 8皇后以及N皇后算法探究,回溯算法的JAVA实现,递归方案 8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,数据结构“栈”实现 研究了递归方法实现回溯,解决N皇后问题,下面我们来探讨一下非递归方案 实验结果令人还是有些失望,原来非递归方案的性能并不比递归方案性能高 代码如下: package com.newflypig.eightqueen; import java.util.Date; /** * 使用循环控制来实现回溯,解决N皇后 * @author [email pr

python2和python3中的编码问题

开始拾起python,准备使用python3, 造轮子的过程中遇到了编码的问题,又看了一下python3和python2相比变化的部分. 首先说个概念: unicode:在本文中表示用4byte表示的unicode编码,也是python内部使用的字符串编码方式. utf-8:在本文中指最少1byte表示的unicode编码方式 我在使用 if isinstance(key,unicode): key= key.encode('utf-8') 的时候,发现key值被转成了b'foo',b'bar'

CentOS 7.0 安装 python3.X 脚本

1 #!/bin/sh 2 3 #第一个Linux下的脚本,太多不明白的地方,只是依着网上的例子照葫芦画瓢,能正常运行即可 4 #运行环境 CentOS 7.0 版本 5 6 #首行指定程序的路径,以#号开头的行是注释行 7 8 #任意文本编辑器编辑此文档.默认是gedit 9 #保存在 Document 文件下,假设此文件名为test.sh 10 #右击属性使其可以执行,或者 右击菜单终端 chmod +x test.sh 11 #因为下面的命令创建文件夹需要的权限较高,先执行命令 su -