1. 首页
  2. web前端

python之分支结构

if语句的使用

在Python中,要构造分支结构可以使用if、elif和else关键字。所谓关键字就是有特殊含义的单词,像if和else就是专门用于构造分支结构的关键字,很显然你不能够使用它作为变量名(事实上,用作其他的标识符也是不可以)。下面模拟个认证的例子来说明一下,

username=str(raw_input("请输入用户名:")) password=str(raw_input("请输入密码:"))  if username == "admin" and password=="12345" :     print ("身份认证成功") else:     print ("身份认证失败")  

以上的代码还是存在不严谨的,我们还需要通过判断用户输入的是否为空值。这里需要用到if的嵌套。修改后的代码如下:

username=str(raw_input("请输入用户名:")) password=str(raw_input("请输入密码:"))  if username !='' and password !='':     if username == "admin" and password=="12345" :         print ("身份认证成功")     else:         print ("身份认证失败") else:     print("请输入用户名和密码") 

巩固练习

练习1:英制单位与公制单位互换

#1英寸=25.4毫米  value=float(raw_input('请输入长度:')) unit=str(raw_input('请输入单位:'))  if unit == 'in' or unit == '英寸':     print('%f英寸=%f厘米' %(value,value*2.54)) elif unit =='cm' or unit =='厘米':     print('%f英寸=%f厘米' % (value, value / 2.54)) else:     print('请输入有效的单位') 

练习2:与电脑玩剪刀石头布游戏

import random  payer=int(raw_input('请输入你的指令(0:石头,1:剪刀,2:布):')) comptuer=random.randint(0,2)  if (payer == 1 and comptuer == 2 ) or (payer == 0 and comptuer == 1 ) or (payer== 2 and comptuer==0):     print('电脑出:{},你出{},你赢了'.format(comptuer,payer)) elif (payer== comptuer):     print('电脑出:{},你出{},打平'.format(comptuer, payer)) else:     print('电脑出:{},你出{},你输了'.format(comptuer, payer)) 

针对以上的小游戏,我们有这样一个需求,三盘两胜方可算赢。那么程序又如何修改呢。参考如下:

import random comptuer_win=0 payer_win=0 while True :     payer=int(raw_input('请输入你的指令(0:石头,1:剪刀,2:布):'))     comptuer=random.randint(0,2)       if (payer == 1 and comptuer == 2 ) or (payer == 0 and comptuer == 1 ) or (payer== 2 and comptuer==0):         print('电脑出:{},你出{},你赢了'.format(comptuer,payer))         payer_win+=1         print(payer_win)     elif (payer== comptuer):         print('电脑出:{},你出{},打平'.format(comptuer, payer))       else:         print('电脑出:{},你出{},你输了'.format(comptuer, payer))         comptuer_win += 1      if comptuer_win == 2 :         print('电脑最终胜出')         break     elif payer_win == 2 :         print('电脑最终胜出')         break 

练习3:输入三条边长如果能构成三角形就计算周长和面积

import math a=int(raw_input("请输入三角形的第一条边长:")) b=int(raw_input("请输入三角形的第二条边长:")) c=int(raw_input("请输入三角形的第二条边长:"))  if a+b > c and a+c>b and b+c >a :     print("三角形的周长:{}".format(a+b+c))      #三角形面积,已知三边利用海伦公式(p=(a+b+c)/2)     #S=sqrt[p(p-a)(p-b)(p-c)]     p=(a+b+c)/2     area=math.sqrt(p*(p-a)*(p-b)*(p-c))      print("三角形的面积:{}".format(area))  else:     print("输入的边长不能构成三角形,请重新输入") 

练习4:实现一个个人所得税计算器。

 salary=float(input('本月收入:')) insurance=float(input('五险一金扣除:')) diff=salary-insurance-5000  if diff <= 0:     rate = 0     deduction = 0 elif diff < 3000 :     rate=0.3     deduction = 0 elif diff < 12000 :     rate =  0.1     deduction= 210  elif diff < 25000:     rate = 0.2     deduction=1410 elif diff < 35000 :     rate = 0.25     deduction = 2660 elif diff < 55000:     rate =0.3     deduction = 4410 elif diff < 80000 :     rate = 0.35     deduction = 7160 else:     rate = 0.45     deduction=15160  tax=abs(diff*rate - deduction) print('个人所得税: ¥%.2f元' % tax) print('实际到手收入:¥%.2f元' % (diff + 5000 - tax))  

原文始发于:python之分支结构

主题测试文章,只做测试使用。发布者:开发工程师,转转请注明出处:http://www.cxybcw.com/3788.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code