练习答案 BMI
while 1:
height = float(input("请输入您的身高(m):"))
weight = float(input("请输入您的体重(kg):"))
bmi = weight / (height * height)
if bmi < 18.5:
print("您的体重过轻")
elif bmi < 23.9:
print("您的体重正常")
elif bmi < 27:
print("您的体重过重")
elif bmi < 32:
print("您的体重肥胖,该减肥了亲!")
else:
print("亲 您的体重非常肥胖,请马上减肥!")
print("您的Bmi值为", bmi)
print("1.再来一次")
print("2.菜单")
b = int(input("请选择:"))
while b != 1 and b != 2:
b = int(input("选项有误,请重新选择:"))
if b == 1:
height = float(input("请输入您的身高(m):"))
weight = float(input("请输入您的体重(kg):"))
bmi = height / (weight * weight)
else:
break
猜数字
"""
1.随机产生一个数字X-X
2.将猜数字代码写在循环中
2.1 输入一个数字 并转换为整数
2.2对比正确答案
2.3输出三种情况
"""
import random
number = random.randint(0,100)
while True:
a= int(input("请输入数字:"))
while a<0 or a >100:
a = input("数字不符合范围要求,请重输:")
a = int(a)
if a > number:
print("您输入的大了")
elif a < number :
print("您输入的小了")
elif a == number:
print("您猜对了")
print("1.继续玩")
print("2.退出游戏")
select = input("请选择:")
select = int(select)
#选项不等于1也不等于2
while select!= 1 and select!= 2:
select = input("选项有误,请重新选择:")
select= int(select)
if select==1:
#重置随机数
number = random.randint(0.100)
else:
#结束游戏,结束循环
break
计算工资
'''1.输入一个税前工资
2.计算各项社会保险费 如果税前工资>=7662 社会保险费 = 7662 *五险一金比例22.5% 如果税前工资 < 7662 社会保险费 = 税前工资 * 五险一金比例22.5%
3.计算应纳税所得额,计算公式如下 应纳税所得额 = 税前工资收入金额 - 各项社会保险费 - 起征点(3500)
4.判断应纳税所得额所在阶梯的适用税率和速算扣除数
5.根据税率和速算扣除数计算应缴纳税额 计算公式如下: 税额 = 应纳税所得额 * 税率 - 速算扣除数
6.计算到手工资,计算公式如下 到手工资 = 税前工资 - 社会保险费 - 税额'''
while True:
Money = input("请输入您的税前工资:")
if Money == "q":
break
#转换为数字
Money = int(Money)
#判断工资大于等于7662
if Money>=7662:
shebao=7662*0.225
else:
shebao=Money*0.225
sude=Money-shebao-3500
#判断应纳税所得额所在阶梯的适用税率和速算扣除数
if Money<=3500:
sude=0
shu=0
elif sude<=1500:
shu=sude*0.03
elif sude<=4500:
shu=sude*0.1-105
elif sude<=9000:
shu=sude*0.2-555
elif sude<=35000:
shu=sude*0.25-1005
elif sude<=55000:
shu=sude*0.3-2755
elif sude <= 80000:
shu = sude * 0.35 - 5505
else:
shu=sude*0.45-13505
Money1=Money-shebao-shu
print("您应缴纳的社保为:",shebao)
print("您应缴纳的所得税为:",shu)
print("您的税后工资为:",Money1)
正文
补:%s 占位符
eg:
a = "这是一个占位符"
print("%s" % a)
%f %.2f 同样的使用方法 但是这个功能是用于小数保留 %.2f 保留小数点后两位
函数
函数的定义:函数就是封装一个功能代码的集合
功能:定义一个函数
define 定义
函数名的命名 :每个单词小写,两个单词用_下划线连接,函数名要做到见名知意
格式:def 函数名
函数调用格式: 函数名()
函数是有参数的 参数分两种
1.必要参数
必须要传的参数, 不传会触发异常。
2.缺省参数
参数有默认值 可以传入 也可以不传
缺省参数 如果传入 就取传入值 否则 取默认值
3.return
列表 list
列表 容器类 可以用来存储任意类型的数据,存储的数据是有顺序的
每一条数据(元素)都有一个索引(下标)索引从0开始 以后以此+1
定义列表 列表中的数据用逗号隔开
列表的增删查改:
# 1.append()向列表追加数据,把列表添加到末尾位置
# object:对象
list1.append('world')
list1.append(0)
print(list1)
# 2.insert() 在指定的位置插入数据
# index 索引 object:要插入的数据
list1.insert(3, False)
print(list1)
# 3.修改列表中的数据,通过索引修改
# IndexError: list assignment index out of range 索引超出范围
list1[2] = 666
print(list1)
# 4.获取列表中的数据,通过索引取数据
result = list1[4]
print(result)
print(list1)
# 5.pop() 根据索引移出数据
result = list1.pop()
print(result)
print(list1)
# 索引为负值,从后向前取值,最后一条数据索引为-1
result = list1[-3]
print(result)
# 切片获取到的是一个新的列表
# list1[x: y] 从x开始,到y的前一条数据
result = list1[2: 5]
print(result)
# 从索引0开始,到索引4
result = list1[: 4]
print(result)
# 从索引4,到结束位置
result = list1[4:]
print(result)
# 把列表中的每个元素都取出来,这种方式叫做遍历
# len() 获取列表中元素的个数
# range(x, y) 包含x 不包含y
for x in range(0, len(list1)):
# 把x的值作为索引,从列表中取出数据
rs = list1[x]
# print(rs)
# 删除列表中的数据,根据索引删除
# del delete:删除
del list1[3]
print(list1)
# remove() 函数 删除指定数据
# ValueError: list.remove(x): x not in list 要删除的元素不在列表中
# 若列表中有相同的元素,只会删除掉第一个匹配到的
list1.remove('hello')
print(list1)
# clear()删除列表中所有的元素
list1.clear()
print(list1)
字典 dict
# 字典 容器类 可以存储任意类型的数据 可以进行增删改查
# 字典中以key: value形式进行数据存储
# key 必须是不可变的 必须是唯一的
# 声明字典
dict1 = {'name': '张三', 'age': 22, 'phone': 110}
# 向字典中添加数据
# 字典[key] = value
dict1['height'] = 170
# 修改字典中的数据
dict1['name'] = '李四'
# 删除字典中的数据
# KeyError: 'xxxx' 字典中没有xxxx这个key
del dict1['height']
# pop()函数,根据key移出字典中key和值
# default参数,如不传递,若key不存在,会触发异常错误
# 若将default参数进行传递,当key不存在时,返回default传递的值
result = dict1.pop('xxxx', '1234')
print(result)
print(dict1)
# 获取字典中的数据,根据key获取,若key不存在,会触发异常错误
# KeyError: 'xxxx'
result = dict1['name']
print(result)
print(dict1)
# get()函数 若key存在,获取到的是对应的值,
# 若key不存在,默认返回None,可以指定默认返回的结果
result = dict1.get('xxxx', 'hello')
print(result)
# 直接遍历字典,拿到的是字典中key
for key in dict1:
# 根据key从字典中取出数据
value = dict1[key]
print('key:%s value:%s' % (key, value))
# 1.keys()获取字典中所有的key,返回一个可迭代(遍历)对象
keys = dict1.keys()
key1 = 'name'
# 判断字典中是否有某个key
# 判断key1是否在keys中,如果在,返回True 不在 返回False
if key1 in keys:
print('key1在字典中')
else:
print('key1不在字典中')
# 2.values() 获取字典中所有的值(value) ,返回一个可迭代(遍历)对象
values = dict1.values()
print(values)
练习
学员管理系统
""" 1.添加学员 1.1 输入学员姓名 1.2 将输入的姓名添加到列表中 2.查询学员 2.1 遍历列表,输出每一个学员姓名 2.2 按照这种格式输出:索引:x 姓名:张三 3.修改学员 3.1 输出所有学员信息 3.2 选择要修改的学员索引,输入选择的索引 3.3 根据选择的索引修改学员信息 4.删除学员 4.1 输出所有学员信息 4.2 选择要删除的学员索引,输入选择的索引 4.3 根据选择的索引删除学员信息 0.退出程序 """
附录:
有同学不会下载安装唉,在此提供一个pycharm的集成环境和Pycharm的安装包 压缩包里好像忘记写安装教程了 ,碰上问题的同学到时候再问我吧,不难 ,下边是百度云链接
链接:https://pan.baidu.com/s/1u49m3PCr3vBtgmrJqbo4qQ 密码:a4n0