# pyg301.py if elif else语句
score = float( input("score:")) # 接受用户输入并转换为float类型,当输入的为小数时,使用int转换会报错
print("成绩等级是:")
if 90 <= score <= 100:
print("A")
elif 80 <= score < 90:
print("B")
elif 60 <= score < 80:
print("C")
else:
print("D")
# pyg302.py if 语句
x = -1
y = 99
if(x >= 0):
if(x > 0): #嵌套的if语句
y = 1
else:
y = 0
else:
y = -1
print ("y =", y)
# pyg303.py
class switch(object):
def __init__(self, value): # 初始化需要匹配的值value
self.value = value
self.fall = False # 如果匹配到的case语句中没有break,则fall为True。
def __iter__(self):
yield self.match # 调用match方法 返回一个生成器
raise StopIteration # StopIteration 异常来判断for循环是否结束
def match(self, *args): # 模拟case子句的方法
if self.fall or not args: # 如果fall为true,则继续执行下面的case子句
# 或case子句没有匹配项,则流转到默认分支。
return True
elif self.value in args: # 匹配成功
self.fall = True
return True
else: # 匹配失败
return False
operator = "+"
x = 1
y = 2
for case in switch(operator): # switch只能用于for in循环中
if case('+'):
print (x + y)
break
if case('-'):
print (x - y)
break
if case('*'):
print (x * y)
break
if case('/'):
print (x / y)
break
if case(): # 默认分支
print( "")
# pyg304.py 《两个数的四则运算练习 X op Y = ?》
class switch(object):
def __init__(self, value): # 初始化需要匹配的值value
self.value = value
self.fall = False # 如果匹配到的case语句中没有break,则fall为True。
def __iter__(self):
yield self.match # 调用match方法 返回一个生成器
raise StopIteration # StopIteration 异常来判断for循环是否结束
def match(self, *args): # 模拟case子句的方法
if self.fall or not args: # 如果fall为true,则继续执行下面的case子句
# 或case子句没有匹配项,则流转到默认分支。
return True
elif self.value in args: # 匹配成功
self.fall = True
return True
else: # 匹配失败
return False
print("《两个数的四则运算练习 X op Y = ?》")
operator = "+"
x = input("X= ")
y = input("y= ")
operator = input("请选择运算符 (+,-,*,/) 之一 :" )
#print(x,operator ,y ," = " )
print(" 运算结果: " )
x=int(x)
y=int(y)
for case in switch(operator): # switch只能用于for in循环中
if case('+'):
print (x,'+',y,'=',x + y)
break
if case('-'):
print (x,'-',y,'=',x - y)
break
if case('*'):
print (x,'*',y,'=',x * y)
break
if case('/'):
print (x,'/',y,'=',x / y)
break
if case(): # 默认分支
print( "")
# pyg305.py 带else子句的while循环
x = float(input("请输入x的值:")) # 接收用户输入的数字并转换为float类型
i = 0
while(x != 0): # python3中不等于抛弃了<>,一律使用!=
if(x > 0):
x -= 1 # 如果x大于0则减1,即 x=x-1
else:
x += 1 # 如果x小于0则加1,即 x=x+1
i = i + 1
print( "第 %d 次循环:" %i, x)
else:
print ("x等于0:", x)
# pyg306py for in语句
for x in range(-2, 2):
if x > 0:
print ("正数:",x)
elif x == 0 :
print ("零:",x)
else:
print ("负数:",x)
else:
print ("循环结束")
思考:请分析输出结果。
#pyg307.py
for i in (1,2,3,6,8,20,100):
print(i,"华夏学院 Hello World")
#pyg308.py 简便计算器
print (" 简便计算器 ")
x=input("x=")
operator=input("operator(+,,*,/): ")
y=input("y=")
x=int(x)
y=int(y)
for c in operator: # 用for in
if c=='+':
print (x + y)
break
if c=='-':
print (x - y)
break
if c=='*':
print (x * y)
break
if c=='/':
print (x / y)
break
if c=='': # 默认分支
print (" ")
print ("BYE")