Python基础篇——判断语句


前言:python语言要求缩进格式一致,不然会报错(要么全用空格,要么全用tab)

一,赋值运算符

注:python里没有自加自减

  1. ( = ) 等于
  2. ( >= ) 大于等于
  3. ( <= ) 小于等于
  4. (+= ) 加等
    a += 10 ------->a = a + 10
  5. ( -= ) 减等
  6. ( *= ) 乘等
  7. ( /= ) 除等
    诸如其他类似的运算符,这里不赘述

二,逻辑运算符

主要有两种
1.用赋值运算符连接的关系
2.与 或 非

(1) and ------ 与 且 一假则假
(2) or --------- 或 一真则真
(3) not ------- 非 一般与in关键字连用

直接运行时返回结果是True或者False
在这里插入图片描述

三,选择结构

  1. 单分支结构
    if 条件 :
    #满足条件的语句(“#” 前是缩进)
if 条件 :
	#满足条件的语句
  1. 双分支结构
if 条件 :
	#满足条件的语句
else:
	#满足条件的语句
  1. 多分支结构(最后一句可以是 'elif ',也可以是 'else ’ )
if 条件 :
	#满足条件的语句
elif 条件 :
	#满足条件的语句
elif 条件 :
	#满足条件的语句

四,练习题

在这里插入图片描述

#第1题
set1 = "1\t3\t5\t7\n" \
       "9\t11\t13\t15\n" \
       "17\t19\t21\t23\n" \
       "25\t27\t29\t31\n"
set2 = "2\t3\t6\t7\n" \
       "10\t11\t14\t15\n" \
       "18\t19\t22\t23\n" \
       "26\t27\t30\t31\n"
set3 = "4\t5\t6\t7\n" \
       "12\t13\t14\t15\n" \
       "20\t21\t22\t23\n" \
       "28\t29\t30\t31\n"
set4 = "8\t9\t10\t11\n" \
       "12\t13\t14\t15\n" \
       "24\t25\t26\t27\n" \
       "28\t29\t30\t31\n"
set5 = "16\t17\t18\t19\n" \
       "20\t21\t22\t23\n" \
       "24\t25\t26\t27\n" \
       "28\t29\t30\t31\n"        #展现题目中方格内的数字
print(set1)
a = input("你的生日是否在set1中:")
if a == "t":                     #用布尔类型判断对错
	a = 1
else : a = 0
print(set2)
b = input("你的生日是否在set2中:")
if b == "t":
	b = 2
else : b = 0
print(set3)
c = input("你的生日是否在set3中:")
if c == "t":
	c = 4
else : c = 0
print(set4)
d = input("你的生日是否在set4中:")
if d == "t":
	d = 8
else : d = 0
print(set5)
e = input("你的生日是否在set5中:")
if e == "t":
	e = 16
else : e = 0
birth = a + b + c + d + e
print("他的生日是" +str(birth))

在这里插入图片描述

#第2题
a,b = map(int,input("请输入体重(磅)a和身高(英寸)b:").split())   #引用多个函数时的用法
weight = a * 0.45359237     #带入题目中的算法
hight = b * 0.0254
BMI = weight / (hight)**2
if BMI < 18.5 :
	print("他属于超轻")
elif 18.5 <= BMI < 25.0 :
	print("他属于标准")
elif 25.0 <= BMI < 30.0 :
	print("他属于超重")
elif 30.0 <= BMI :
	print("他属于痴肥")

在这里插入图片描述

#第3题
year = int(input("请输入一个年份:"))      #这是不用判断的做法
if year // 4 % 10 == 0 or year // 400 % 10 == 0:
	print("该年份是闰年")
if year // 100 % 10 != 0:
	print("该年份不是闰年")

在这里插入图片描述

#第4题(彩票)
import random         #引用随机函数
num1 = int(input("请输入一个两位数字:"))
num2 = random.randrange(1,100,1)     #产生1到100之间的一个随机数
a,b = num2 % 10,num2 //10
num3 = a + b * 10 
print("本次开奖号码为:" +str(num2))
if num1 == num2:
	print("\n奖金为10000美元")
elif num1 == num3:
	print("\n奖金为3000美元")
elif num1 % 10 == a or num1 // 10 == b:
	print("\n奖金为1000美元")
else:
	print("\n很遗憾什么奖也没中")

在这里插入图片描述

#第5题
a,b,c = map(float,input("题目:求解ax**2+bx+c=0的平方根\n请输入a,b,c的值:").split())
r1 = (-b + (b**2 - 4*a*c)) / 2*a
r2 = (-b - (b**2 - 4*a*c)) / 2*a
if b**2 - 4*a*c > 0:
	print("该方程的两个实根为%.2f和%.2f" %(r1,r2))
elif b**2 - 4*a*c == 0:
	print("该方程的根为%f" %(r1))
elif b**2 - 4*a*c < 0:
	print("该方程无实根")

在这里插入图片描述

#第6题
print("用克莱姆法则解下列方程")
a,b,c,d,e,f = map(float,input("请输入a,b,c,d,e,f的值:").split())
x = (e*d - b*f) / (a*d - b*c)
y = (a*f - e*c) / (a*d - b*c)
e = a*x + b*y
f = c*x + d*y
if a*d - b*c == 0:
	print("The equation has no solution")
else:
	print("x=%.2f,y=%.2f"%(x,y))

在这里插入图片描述

#第7题(找未来数据)
day = int(input("请输入今天是周几(数字表示):"))
nextday = int(input("请输入今天之后到未来某天的天数:"))
future = (nextday + day) % 7
print("未来这天是星期%s" %(future))    #这题同样没用判断

在这里插入图片描述

#第8题(比较价钱)
pay1,weight1 = map(float,input("请输入第一袋包装的重量和价钱:").split())
pay2,weight2 = map(float,input("请输入第二袋包装的重量和价钱:").split())
if pay1 > pay2:
	print("第二袋价钱更好")
if pay1 < pay2:
	print("第一袋价钱更好")

在这里插入图片描述

#第9题
num = int(input("请输入一个整数:"))
print("该数字能否被5和6整除?")
if num // 5 == 0 and num // 6 == 0:
	print("不可以")
else:
	print("可以")
print("该数字能否被5或6整除?")
if num // 5 == 0 or num // 6 == 0:
	print("不可以")
else:
	print("可以")
print("该数字能否被5和6中的其中一个整除(但是又不能被他们同时整除)?")
if num // 5 == 0 and num // 6 == 0:
	print("可以")
else:
	print("不可以")

在这里插入图片描述

#第10题
import random    
num = int(input("石头剪刀布,0代表剪刀,1代表石头,2代表布。请输入0,1或2:"))
num1 = random.randrange(0,2)
print("电脑出:"+str(num1))
if num == num1:
	print("平局")
elif num == 0 and num1 == 1:
	print("你输了")
elif num == 0 and num1 == 2:
	print("你赢了")
elif num == 1 and num1 == 0:
	print("你赢了")
elif num == 1 and num1 == 2:
	print("你输了")
elif num == 2 and num1 == 0:
	print("你输了")
elif num == 2 and num1 == 1:
	print("你赢了")

在这里插入图片描述

#第11题
num = int(input("0表示将美元转换为人民币,1表示将人民币转换为美元。请输入你的选项:"))
num1 = float(input("请输入金额:"))
exchange = float(input("汇率是:"))
if num == 0:
	num1 = num1 * exchange
	print("该金额转换成人名币为$%.2f" %num1)
elif num == 1:
	num1 = num1 / exchange
	print("该金额转换成美元为$%.2f" %num1)

在这里插入图片描述

#第12题
a,b,c = map(float,input("请输入三角形的三条边:").split())
if a+b>c and a+c>b and b+c>a:
	a+b+c
	print("这个三角形的周长是:",a+b+c)
else:
	print("这个三角形不合法")

在这里插入图片描述

#第13题
year,mouth,day = map(int,input("请输入年份,月份以及这个月的某天:").split())
h = int((day+(26*(mouth+1)/10)+year%10+year%10/4+year/100+5*(year/100))%7)
if h == 0:
	print("这天是星期六")
elif h == 1:
	print("这天是星期天")
elif h == 2:
	print("这天是星期一")
elif h == 3:
	print("这天是星期二")
elif h == 4:
	print("这天是星期三")
elif h == 5:
	print("这天是星期四")
elif h == 6:
	print("这天是星期五")

在这里插入图片描述

#第14题
x,y = map(float,input("判断一个点是否在圆心为(0,0)半径为10的圆内\n请输入一个点的坐标:").split())
print("这个点到(0,0)之间的距离小于或等于10,则该点在圆内")
d = ((x-0)**2+(y-0)**2)**0.5
print("该点与圆心的距离为%.2f" %d)
if d <= 10:
	print("该点在圆内")
else:
	print("该点不在圆内")

在这里插入图片描述

#第15题
print("判断一个点是否在以(0,0)为中心而宽为10高为5的矩形内\n若一个点到(0,0)的水平距离小于或等于10/2而(0,0)的垂直距离小于或等于5.0/2,则这个点在矩形内")
x,y = map(float,input("请输入一个点的坐标:").split())
if x<=10/2 and y<=5/2:
	print("这个点在矩形内")
else:
	print("这个点不在矩形内")

在这里插入图片描述

#第16题
num = int(input("请输入一个3位整数:"))
if num%10 == num//100:
	print("这个数是一个回文数")
else:
	print("这个数不是回文数")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值