继续上一次教程,今天进行python计算的基础学习以及初步了解数字类型操作基础。
1.if 条件判断表达式
age =18
if age<4:
print('幼儿')
if age<12:
print('儿童')
if age<18:
print('青少年')
if age<25:
print('青年')
if age <100:
print('少于100')
else:
print('大于100')
#局部变量 影响部分代码 在部分代码中有效
#全局变量 在全部变量都有效
2.个税计算
salary =input('请输入工资')
salary =int(salary)
sanXian =0
if salary>=7662:
sanXian=7662*0.225
else:
sanXian =salary*0.225
yingNaShuiEr =salary-sanXian-3500
shuiLv =0
kouChuShu =0
if sanXian<=0:
print('loser')
else:
if yingNaShuiEr<=1500:
shuiLv =0.03
kouChuShu =0
elif yingNaShuiEr<=4500:
shuiLv =0.1
kouChuShu =105
elif yingNaShuiEr <=9000:
shuiLv =0.2
kouChuShu =555
elif yingNaShuiEr <=35000:
shuiLv =0.25
kouChuShu =1005
elif yingNaShuiEr<=55000:
shuiLv=0.3
kouChuShu =2755
elif yingNaShuiEr<=80000:
shuiLv =0.35
kouChuShu =5505
else:
shuiLv =0.45
kouChuShu =13505
yingNaGeRenSuoDeShui = yingNaShuiEr*shuiLv-kouChuShu
print(yingNaGeRenSuoDeShui)
3.数字类型操作
#字符串 数字 布尔 列表 元组 字典
#怎么判断输入的数字为整数
num =input('请输入一个整数')
num =int(num)
if num % 2==0:
print('偶数')
else:
print('奇数')
#问题二:怎么判断一个数字既是3的倍数也是4的倍数
if num % 12==0:
print('既是3的倍数也是4的倍数')
else:
print('不是3和4的倍数')
if num % 3==0:
if num % 4==0:
print('既是3也是4的倍数')
else:
print('是3的倍数不是4的倍数')
else:
print('既不是3也不是4的倍数')
#3.怎么判断一个数字是5的倍数或6的倍数
if num %5==0:
if num % 6==0:
print('既是5又是6的倍数')
else :
print('是5的倍数不是6的倍数')
else:
if num % 6==0:
print('只是6的倍数')
else:
print('既不是5也不是6的倍数')
#or 多个条件只要一个满足就可以
if num % 5 ==0 or num % 6==0:
print('既是5的倍数也是6的倍数')
#总结:and和or用于多个条件判断的情况下,
# and:只有一个条件为假,最终结果就为假
# 条件1 真 条件2 真 结果真
# 条件1 假 条件2 假 结果假
# 条件1 假 条件2 假 结果假
# or:只要有一个条件为真,就为真
# 条件1 真 条件2 真 结果真
# 条件1 真 条件2 假 结果真
# 条件1 假 条件2 假 结果假
#框架 ,工具 , 包 ,插件
#从random包中引出随机整数地方法
from random import randint
#在0和3之间获得一个整数
#计算机当中的随机数也称之为“伪随机数”
#计算机找随机数是根据计算机内部的算法来找的
number =randint(0,3)
print(number)
user_number =input('请输入你要猜的数字')
user_number =int(user_number)
comput_number =randint(0,3)
if(user_number==comput_number):
print('you win')
else:
print('you lose')
4.石头剪刀布模式计算
#A B C from random import randint #0 1 2 comput_num =randint(0,2) user_num =input('请输入数字') if user_num.isdigit(): user_num = int(user_num) if 0<= user_num<=2: if user_num-comput_num >0: print('玩家胜利') elif user_num-comput_num<0: print('电脑胜利') else: print('平局') else: print('输入的数字超出范围') else: print('输入的格式不对')
5.for循环模式计算
#for in结构 index索引 range范围
# rangzhi后面一个值
for index in range(10):
print()
print(index)
#range后面一个值表示代码运行的次数
#值1表示循环开始的位置
#值2表示循环结束的位置
for index in range(50,100):
print('')
print(index)
#值3表示循环的增量
num =100
num =num+100
num += 100
print(num)
#问题:获取1~100之间所有数字
sum = 0
for x in range(1,101):
sum = sum +x
print('x=%x' % x)
print(sum)
#问题2:获取1~100之间所有奇数之和与5的倍数之和的差
sum1 = 0
sum2 = 0
for x in range(0,101,5):
sum1 =sum1 + x
for x in range(1,101,2):
sum2 =sum2 + x
print(sum2-sum1)
#石头剪刀布 小程序
from random import randint
user_win = 0
computer_win = 0
deuce = 0
#index代表编号
#value代表值\
for index ,value in enumerate(range(3)):
print(index)
user_num = input('请输入数字')
user_num = int(user_num)
comput_num = randint(0,2)
if user_num-comput_num==-1 or user_num-comput_num==2:
print('第{}局玩家胜'.format(index + 1))
user_win +=1
elif user_num - comput_num == 0:
print('第{}局平局'.format(index + 1))
deuce +=1
else:
print('第{}局平局'.format(index + 1))
computer_win +=1
print('-----第{}局结束-----',format(index + 1))
if computer_win ==2 :
print('电脑胜')
elif user_win == 2 :
print('玩家胜')
break
# 平一局 一胜一负 平两局 平两局 赢一局 平三局
else:
if deuce == 1 and computer_win-user_win ==0:
print('平局')
elif deuce == 3:
print('平局')
elif deuce == 2 and index == 2:
if computer_win -user_win ==1:
print('电脑胜')
elif user_win - comput_num ==1:
print('玩家胜')
未完待续!!!!