[Python系列-6]:Python之人工智能 - 基本语法-3-程序循环控制语句:for...in,while

作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/119223668


目录

第1部分 Python简介

1.1 Python简介

1.2 Jupyter notebook演示工具

1.3 Python的程序控制语句

第2部分 with语句 

文件读写初级:

文件读写中级:

文件读写高级:

with语句的工作原理和使用with语句的条件

第3部分 for...in循环语句

3.1 基本用法

3.2 循环使用 else 语句

第4部分 while循环语句

4.1 基本的while循环

4.2 无限循环

4.3 循环使用 else 语句

4.4 简单语句组



第1部分 Python简介

1.1 Python简介

Python由荷兰数学计算机科学研究学会的Guido van Rossum 于1990 年代初设计,作为一门叫做ABC语言的替代品。 [1] Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言, [2]  随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。 

Python解释器易于扩展,可以使用CC++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。 [4]  Python 也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码机器码

1.2 Jupyter notebook演示工具

1.3 Python的程序控制语句

 

第2部分 with语句 

 源码:

文件读写初级:

一般访问文件资源时我们会这样处理:

1 myfile = open(r'c:\mytest.txt', 'r')
2 data = myfile.read()
3 myfile.close()

存在两个问题:

1. 如果在读写时出现异常而忘了异常处理。
2. 忘了关闭文件句柄

文件读写中级:

以下的加强版本的写法:

1  myfile = open(r'c:\mytest.txt', 'r') 
2 try: 
3     data = myfile.read() 
4 finally: 
5     myfile.close()

以上的写法就可以避免因读取文件时异常的发生而没有关闭问题的处理了。代码长了一些。

文件读写高级:

使用with有更优雅的写法:

with open("test.txt","w+",) as myfile:
    myfile.write("hello")
#无需手工关闭文件

with后面接的对象返回的结果赋值给myfile。

此例当中open函数返回的文件对象赋值给了myfile;

with会自已获取上下文件的异常信息。

with语句的工作原理和使用with语句的条件

__enter__()/__exit__()这两个方法

with后面返回的对象要求必须有这两个方法,而文件对象myfile刚好是有这两个方法的。

有了这两个方向,在进入with语句作用范围时,自动执行隐含的__enter__()函数

在离开with语句作用范围时,自动执行隐含的__exit__()函数。

第3部分 for...in循环语句

for...in在深度学习的代码中得到了广泛的应用,用于从一组数据中依次取出一对数据,然后进行对取出的数据进行处理。

3.1 基本用法

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

语法:

for循环的语法格式如下:

for iterating_var in sequence:
   statements(s)

流程图:

实例:

#!/usr/bin/python # -*- coding: UTF-8 -*- 

# 第一个实例:从字符串中依次取字母
for letter in 'Python': 
    print("当前字母: %s" % letter) 

#第二个实例:从列表中依次取数据
fruits = ['banana', 'apple', 'mango'] 
for fruit in fruits: 
    print ('当前水果: %s'% fruit)

print ("Good bye!")


尝试一下 »

以上实例输出结果:

当前字母: P
当前字母: y
当前字母: t
当前字母: h
当前字母: o
当前字母: n
当前水果: banana
当前水果: apple
当前水果: mango
Good bye!

通过序列索引迭代

另外一种执行循环的遍历方式是通过索引,如下实例:

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- 

fruits = ['banana', 'apple', 'mango'] 
for index in range(len(fruits)):  #range(len(fruits))生成一个数字序列列表
    print ('当前水果 : %s' % fruits[index]) 

print ("Good bye!")

以上实例输出结果:

当前水果 : banana
当前水果 : apple
当前水果 : mango
Good bye!

以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。


3.2 循环使用 else 语句

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

这是C语言没有的特殊语法。

实例:

#!/usr/bin/python # -*- coding: UTF-8 -*- 

for num in range(10,20): # 迭代 10 到 20 之间的数字 
    for i in range(2,num): # 根据因子迭代 
        if num%i == 0: # 确定第一个因子 
            j=num/i # 计算第二个因子 
            print ('%d 等于 %d * %d' % (num,i,j)) 
            break # 跳出当前循环 
    else: # 循环的else 部分 
        print ('%d 是一个质数' % num)


尝试一下 »

以上实例输出结果:

10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数

第4部分 while循环语句

4.1 基本的while循环

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

while 判断条件(condition):
    执行语句(statements)……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

当判断条件假 false 时,循环结束。

执行流程图如下:

Gif 演示 Python while 语句执行过程

复杂一点:

实例:

#!/usr/bin/python 

count = 0 

while (count < 9): 
    print 'The count is:', count 
    count = count + 1 

print "Good bye!"


运行实例 »

以上代码执行输出结果:

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!

while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:

# continue用法

i = 1 

while i < 10: 

        i += 1 

        if i%2 > 0: # 非双数时跳过输出 

                continue print i # 输出双数2、4、6、8、10 
# break 用法

i = 1 

while 1: # 循环条件为1必定成立 

        print i # 输出1~10 

        i += 1 

        if i > 10: # 当i大于10时跳出循环 

                break

4.2 无限循环

如果条件判断语句永远为 true,循环将会无限的执行下去,如下实例:

实例:

#!/usr/bin/python # -*- coding: UTF-8 -*- 

var = 1 

while var == 1 : # 该条件永远为true,循环将无限执行下去 
    num = raw_input("Enter a number :") 
    print "You entered: ", num 

print "Good bye!"

以上实例输出结果:

Enter a number  :20
You entered:  20
Enter a number  :29
You entered:  29
Enter a number  :3
You entered:  3
Enter a number between :Traceback (most recent call last):
  File "test.py", line 5, in <module>
    num = raw_input("Enter a number :")
KeyboardInterrupt

注意:以上的无限循环你可以使用 CTRL+C 来中断循环。


4.3 循环使用 else 语句

在 python 中,while … else 在循环条件为 false 时执行 else 语句块:

实例:

#!/usr/bin/python 

count = 0 

while count < 5: 
    print count, " is less than 5" 
    count = count + 1 
else: 
    print count, " is not less than 5"

以上实例输出结果为:

0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5

4.4 简单语句组

类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:

实例:

#!/usr/bin/python 

flag = 1 

while (flag): print 'Given flag is really true!' 

print "Good bye!"

注意:以上的无限循环你可以使用 CTRL+C 来中断循环。



作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/119223668

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文火冰糖的硅基工坊

你的鼓励是我前进的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值