循环语句

和其他语言一样,python有while循环和for循环

while循环

只要满足循环条件,循环就会一直进行

#while每循环一次num就会自增一次,直到循环条件不满足就会停止循环
num = 0

while num < 10:
    print(num)
    num+=1

QQ截图20210114140800.png

for循环

根据变量赋值的次数进行循环

#range会产生一个可迭代对象,每赋值一次就执行一次循环
for i in range(11):
    print(i)

QQ截图20210114141359.png

break和continue

在循环时,break会阻止循环,continue会阻止当前循环立刻进行下一次循环

#在i==5时因为break语句跳出循环
for i in range(11):
    if(i == 5):
        break
    print(i)

QQ截图20210114141817.png

#在i==5时因为continue语句跳出当前循环立刻执行下一次循环
for i in range(11):
    if(i == 5):
        continue
    print(i)

QQ截图20210114141847.png

文件对象

python可以对文件进行读写操作

写入文件

#打开文件,wb为write和binary
f = open("testone.txt","wb")

f.writelines([b"one\r\n",b"tow\r\n",b"three\r\n"])

f.close()

QQ截图20210114143706.png

读取文件

#打开文件,rb为read和binary
f = open("c:\\users\\win7\\testone.txt","rb")

#每次读取文件都会移动指针
print(f.read())#移动指针到结尾读取文件所有内容
print(f.seek(0,0))#指针移动到结尾后需要归零指针才能从开头读取内容
print(f.read(5))#读取5个字节并移动指针
print(f.read(5))
print(f.seek(0,0))#指针归零
print(f.readline())#按行读取
print(f.readline())#按行读取
print(f.readline())#按行读取
print(f.readlines())#通过列表显示多行信息
f.close()

QQ截图20210114144526.png

文件复制

#打开2个文件
sf = open("testone.txt","rb")
df = open("testtwo.txt","wb")

while True:
    #每次读取4096个字节写入到文件,如果读取结果为空,复制完成跳出循环
    data = sf.read(4096)
    if data == b"":
        break
    df.write(data)

sf.close()
df.close()

QQ截图20210114144936.png

模块及函数

函数

和其他语言一样,python可以定义函数以及形参

#division函数有2个形参,也可以不定义形参
def division(a,b):
    num = a / b
    return num

模块

你可以通过import引入一个模块,模块文件可以在当前目录也可以在lib目录

import random

#查看模块信息
print(help(random))

QQ截图20210114150825.png

自定义一个模块,包括模块中的函数

#printstar.py

"""
介绍模块的作用,
里面包含的功能,
作者的联系方式等等
"""

star = "**********"
"star变量的作用是付了10个星号"


def p_star():
    "我的作用是返回20个星号"
    return "*"*20

使用模块并查看模块信息

import printstar

print(help(printstar))
print("-----------")
print(dir(printstar))
print("-----------")
print(help(printstar.p_star))

QQ截图20210114151056.png

调用模块中的p_star

import printstar

star20 = printstar.p_star()
print(printstar.star)
print("     hello")
print(star20)

QQ截图20210114151203.png

异常捕获

当程序抛出异常,如果没有异常捕获程序会终止执行,可以使用try语句捕获异常,并执行特定代码

#语法结构
#try:
#   被捕获的子语句
#except 异常类型1:
#   pass
#except (异常类型1,类型2,...):
#   pass
#定义一个函数,当try内的代码抛出特定的异常后,会执行指定except中的代码,并继续执行后续代码
def division(a,b):
    num = a / b
    return num
try:
    numa = int(input("请输入被除数:"))
    numb = int(input("请输入除数:"))

    endnum = division(numa,numb)
    print(endnum)
except ZeroDivisionError:
    print("除数不能为0")
except ValueError:
    print("请输入正常的整数")
except (KeyboardInterrupt,EOFError):
    pass

QQ截图20210114152117.png