目录
程序的基本结构
程序由3种基本结构组成:顺序结构、分支结构和循环结构。这些基本结构都有一个入口和一个出口。
顺序结构:按照实物本身特性,必须一个接着一个来完成。
选择结构:到某个节点后,会根据一次判断结果来决定之后走哪一个分支。
循环结构:循环结构有一个循环体,循环体是一段代码。对于循环结构来说,关键在于根据判断的结果,来决定循环体执行多少次。
总结:对于顺序结构来说,不需判断,因为下一句指令就是你要执行的。对与循环与选择结构来说,都需要进行判断。然后根据判断结果来决定怎么办。逻辑上有一种类型,叫bool类型(又写作boolean类型,中文叫布尔类型)。布尔类型只有两个值,真和假。
一 顺序结构
顺序结构是程序按照线性顺序依次执行的一种运行方式。
二 分支结构
分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式。根据条件确定是否执行。
(1)单分支结构:if语句
if<条件>:
<语句块>
语句块是if条件满足后执行的一个或多个语句序列。
(2)二分支语句:if-else语句
if<条件>:
<语句块1>
else:
<语句块2>
还有一种简洁的表达方式:
<表达式1>if<条件>else<表达式2>
(3)多分支结构:if-elif-else语句
if<条件1>:
<语句块1>
elif<条件2>:
<语句块2>
…
else:
<语句块N>
i1 = int(input("请输入一个月份:"))
if i1 > 12 or i1 < 0:
print("输入不合格")
if 3 <= i1 <= 4:
print(i1,f"月是春季")
elif 5 <= i1 <= 8:
print(i1, f"月是夏季")
elif 9 <= i1 <= 10:
print(i1, f"月是秋季")
else:
print(i1,f"月是冬季")
关键字有 if elif else
if条件执行 :如果条件满足则执行
if条件:语句块内的代码要么都执行,要么都不执行
单分支只有一个if
input_str = input("请输入一个数字:")
input_value = int(input_str)
if input_value % 2 == 1 :
print("请输入一个偶数")
if not input_value % 2 :
print("这是一个偶数")
if input_value % 4 == 0 :
print("这是4的倍数")
if input_value % 8 == 0 :
print("这是8的倍数")
elif : 也要有条件表达式 前面必须有if 同一个分支可以有多个elif。
grade = float(input("输入小明成绩:"))
if grade < 0 or grade > 100:
print("输入错误")
elif 90 <= grade <= 100:
print("优秀")
elif 80 <= grade < 90:
print("良好")
elif 70 <= grade < 80:
print("中等")
elif 60 <= grade < 70:
print("及格")
elif 0 <= grade < 60:
print("渣渣")
else :没有条件 同一个分支可以有多个else。
a = int(input("请输入一个数字:"))
if a % 2:
b = int(input("再输入一个数字:"))
if not b % 2:
print(f"{a+b}")
else :
print(f"{a-b}")
三 循环结构
循环结构的定义:
循环结构是指在程序中需要反复执行某个功能而设置的一种程序结构。它由循环体中的条件,判断继续执行某个功能还是退出循环。根据判断条件,循环结构又可细分为以下两种形式:先判断后执行的循环结构和先执行后判断的循环结构。
python中有哪些循环?
1)for 循环
for 循环用于迭代序列(即列表,元组,字典,集合或字符串)。
例:输出九九乘法表:
for i in range(1, 10):
for j in range(1, i + 1):
print(f"{j} * {i} = {i*j}", end="\t") # \t 制表符
print()
输入结果:
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
打印图形
# input_value 代表的是行数
input_str = input("请输入一个数字:")
input_value = int(input_str)
for i in range(1, input_value + 1): # 这里面的input_value和i的值都代表的是行数
print("*" * (2 * i - 1))
输出结果:
*
***
*****
*******
*********
***********
*************
2)while循环
while循环原理流程图:
while是计算机的一种基本循环模式。当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环。例:输出九九乘法表:while的循环嵌套
i = 0
while i < 9:
# print(i)
i += 1
j = 0
while j < i:
# print(j)
j += 1
print(f"{j}*{i}={i*j}", end="\t")
print()
i = 1
while i < 10:
# print(i)
j = 1
while j <= i:
print(f"{j}*{i}={i * j}", end="\t")
j += 1
print()
i += 1
输出结果:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
最后用一个实例表达出循环结构的精髓。
四 小海龟会画画
1 导入模版 :模块如何使用
# 导入模块
import turtle
# 使用turtle模块中已经定义好的方法
turtle.forward(数值) # 从左向右,绘制一条指定长度的横线(像素) 1980 * 1024
2 手绘一条直线
import turtle
import time
# 绘制一条100像素的横线
turtle.forward(100)
# 休眠10s
time.sleep(10)
3 使用turtle模块+for循环绘制五角星
import turtle
import time
# 循环5次
turtle.pencolor('red')
for i in range(5):
turtle.forward(100)
turtle.right(144)
time.sleep(10)