Python——控制语句(上)

  • 051. PyCharm的下载
  • 052. 选择结构_单分支
  • 单分支选择结构
  • 条件表达式详解
  • 053. 选择结构_双分支
  • 双分支选择结构
  • 三元条件运算符
  • 054. 选择结构_多分支
  • 055. 选择结构的嵌套
  • 056. 循环结构_while循环
  • 循环结构
  • while循环
  • 057. 循环结构_for循环
  • for循环和可迭代对象遍历
  • 可迭代对象
  • range对象
  • 058. 嵌套循环
  • 059. 嵌套循环练习
  • 九九乘法表
  • 打印指定信息



051. PyCharm的下载

下载地址


052. 选择结构_单分支

  选择结构通过判断条件是否成立,来决定执行哪个分支。选择结构有多种形式,分为:单分支、双分支、多分支。

python 只允许输入数字 py中如何控制只输入10个数_迭代


python 只允许输入数字 py中如何控制只输入10个数_Python_02

单分支选择结构

  if语句单分支结构的语法形式如下:
if 条件表达式:
  语句 / 语句块

其中:
  ① 条件表达式:可以是逻辑表达式、关系表达式、算术表达式等等。
  ② 语句/语句块:可以是一条语句,也可以是多条语句。多条语句,缩进必须对齐一致。

# 获取键盘输入
a = input("请输入一个小于10的数字:")

# 单分支选择结构
if int(a)<10:
    print(a)

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_选择结构_03

条件表达式详解

  在选择和循环结构中,条件表达式的值为False的情况如下:
  False、0、0.0、空值None、空序列对象(空列表、空元组、空集合、空字典、空字符串)、空range对象、空迭代对象。
  其他情况,均为True。这么看来,Python所有的合法表达式都可以看做条件表达式,甚至包括函数调用的表达式。

注意:条件表达式中,不能有赋值运算符“=” !


053. 选择结构_双分支

双分支选择结构

  双分支结构的语法格式如下:
if 条件表达式:
  语句1 / 语句块1
else
  语句2 / 语句块2

# 获取键盘输入
a = input("请输入一个数字:")

# 双分支选择结构
if int(a)<10:
    print("您输入的是小于10的数字")
else:
    print("您输入的是大于等于10的数字")

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_python 只允许输入数字_04


python 只允许输入数字 py中如何控制只输入10个数_Python_05

三元条件运算符

  Python提供了三元运算符,用来在某些简单双分支赋值情况。三元条件运算符语法格式如下:


条件为真时的值   if   (条件表达式)   else   条件为假时的值

# 获取键盘输入
a = input("请输入一个数字:")

# 三元条件运算符
print("小于10" if int(a)<10 else "大于等于10")

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_循环结构_06


python 只允许输入数字 py中如何控制只输入10个数_Python_07


054. 选择结构_多分支

  多分支结构的语法格式如下:
if 条件表达式1:
  语句1 / 语句块1
elif 条件表达式2:
  语句2 / 语句块2
···
elif 条件表达式n:
  语句n / 语句块n
[else:
  语句n+1 / 语句块n+1
]

  多分支结构,几个分支之间是有逻辑关系的,不能随意颠倒位置。

# 多分支选择结构
score = int(input("请输入分数:"))
grade = ''

if score<60:
    grade = '不及格'
elif score<80:
    grade = '及格'
elif score<90:
    grade = '良好'
else:
    grade = '优秀'

print('分数是{0},等级是{1}。'.format(score,grade))

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_循环结构_08


055. 选择结构的嵌套

  选择结构可以嵌套,使用时一定要注意控制好不同级别代码块的缩进量,因为缩进量决定了代码的从属关系。语法格式如下:
if 表达式1:
  语句块1
  if 表达式2:
     语句块2
  else:
    语句块3
else:
  if 表达式4:
    语句块4

# 选择结构的嵌套
score = int(input("请输入分数:"))
grade = ""
if score>100 or score<0:
    print("请输入0-100的分数")
else:
    if score>=90:
        grade = "A"
    elif score>=80:
        grade = "B"
    elif score>=70:
        grade = "C"
    elif score>=60:
        grade = "D"
    else:
        grade = "E"
    print("分数是{0},等级是{1}。".format(score,grade))

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_迭代_09

# 代码更少的办法
score = int(input("请输入一个分数:"))
grade = "ABCDE"
num = 0
if score>100 or score<0:
    print("请输入一个0-100的分数")
else:
    num = score//10
    if num<6:
        num = 5
    print(grade[9-num])

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_python 只允许输入数字_10


056. 循环结构_while循环

循环结构

  循环结构用来重复执行一条或多条语句。表达这样的逻辑:如果符合条件,则反复执行循环体的语句。在每次执行完后都会判断一次条件是否为True,如果为True则重复执行循环体里的语句。图示如下:

python 只允许输入数字 py中如何控制只输入10个数_循环结构_11


  循环体里面的语句至少应该包含改变条件表达式的语句,以使循环趋于结束;否则,就会变成一个死循环。

while循环

  while循环的语法格式如下:
while 条件表达式:
  循环体语句

# 用while循环打印0-10的数字
num = 0
while num<=10:
    print(num,end="\t")
    num += 1

print()
print("*******************")

# 计算1-100之间数字的累加和
num2 = 0
sum_all = 0
while num2<=100:
    sum_all = sum_all+num2
    num2 += 1
print("1-100的累加和:",sum_all)

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_Python_12


057. 循环结构_for循环

for循环和可迭代对象遍历

  for循环通常用于可迭代对象的遍历。for循环的语法格式如下:
for   变量   in   可迭代对象
  循环体语句

可迭代对象

  Python包含以下几种可迭代对象:

  1. 序列。包含:字符串、列表、元组
  2. 字典
  3. 迭代器对象(iterator)
  4. 生成器函数(generator)
  5. 文件对象
# for循环结构
for x in (10,20,30):
    print(x*30,end="\t")
print()   # 换行

# 字符串
for x in "abcdef":
    print(x,end="\t")
print()   # 换行

# 字典
d = {'name':'张三','age':18,'sex':'男'}
for x in d:
    print(x,end='\t')   # 默认打印键
print()   # 换行
for x in d.keys():
    print(x,end='\t')   # 打印键
print()   # 换行
for x in d.values():
    print(x,end='\t')   # 打印值
print()   # 换行
for x in d.items():
    print(x,end='\t')   # 打印键值对

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_python 只允许输入数字_13

range对象

  range对象是一个迭代器对象,用来产生指定范围的数字序列。格式为:


range(start, end [,step])


  生成的数值序列从start开始到end结束(不包含end)。若没有填写start,则默认从0开始。step是可选的步长,默认为1。

# range对象
for x in range(5):
    print(x,end='\t')
print()

# 计算1-100之间数字的累加和、奇数和、偶数和
sum_all = 0   #1-100的累加和
sun_even = 0   #1-100偶数的累加和
sum_odd = 0    #1-100奇数的累加和
for x in range(101):
    sum_all += x
    if x%2==1:
        sum_odd += x   # 奇数和
    else:
        sun_even += x   # 偶数和
print("1-100的累加和是{0},奇数和是{1},偶数和是{2}".format(sum_all,sum_odd,sun_even))

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_选择结构_14


058. 嵌套循环

  一个循环体内可以嵌入另一个循环,一般称为“嵌套循环”,或者“多重循环”。

# 循环嵌套
for x in range(5):
    for y in range(5):
        print(x,end="\t")
    print()

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_选择结构_15


059. 嵌套循环练习

九九乘法表

# 九九乘法表
for m in range(1,10):
    for n in range(1,m+1):
        print("{0}×{1}={2}".format(m,n,(m*n)),end="\t")
    print()   # 换行

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_迭代_16

打印指定信息

# 使用列表和字典存储表格的数据
r1 = dict(name="张三",age=18,grade=91)
r2 = dict(name="李四",age=19,grade=88)
r3 = dict(name="王五",age=18,grade=94)
tb = [r1,r2,r3]

# 打印出成绩大于90的学生信息
for x in tb:
    if x.get("grade")>90:
        print(x)

运行结果:

python 只允许输入数字 py中如何控制只输入10个数_选择结构_17