Python算法及猜拳小程序

1.个人所得税计算:

#工资  salary
salary = input('请输入您的工资:')
#将输入的内容转化为数字
salary = int(salary)
sanXian = 0
if salary >= 7662 :
    sanXian = 7662 * 0.225
else:
    sanXian = salary * 0.225
suoDeShuiE = salary - sanXian - 3500
shuiLv = 0
kouChu = 0
if suoDeShuiE <= 0 :
    print ('不用交税')
else:
    if suoDeShuiE <= 1500 :
        shuiLv = 0.03
    elif suoDeShuiE <= 4500 :
        shuiLv = 0.1
        kouChu = 105
    elif suoDeShuiE <= 9000 :
        shuiLv = 0.2
        kouChu = 555
    elif suoDeShuiE <= 35000 :
        shuiLv = 0.25
        kouChu = 1005
    elif suoDeShuiE <= 55000 :
        shuiLv = 0.3
        kouChu = 2755
    elif suoDeShuiE <= 80000 :
        shuiLv = 0.35
        kouChu = 5505
    else:
        shuiLv = 0.45
        kouChu = 13505
    #PersonalIncomeTax:个人所得税
    PersonalIncomeTax = suoDeShuiE * shuiLv - kouChu
    PersonalIncomeTax = str(PersonalIncomeTax)
    print ('个人应该交纳的税为:'+PersonalIncomeTax)

运行结果工资为:10w


2.猜拳小程序:

#石头剪子布  小程序   三局两胜制
from random import randint

user_win = 0
compunter_win = 0
deuce = 0
#index代表标号       value代表值
for index,value in enumerate(range(3)):

    user_num = input('请输入数字')
    user_num = int (user_num)
    compunter_num = randint(0,2)

    if user_num- compunter_num == -1 or user_num-compunter_num==2:
        print ('第{}局玩家胜'.format(index+1))
        user_win += 1
    elif user_num - compunter_num == 0:
        print ('第{}局平局'.format(index+1))
        deuce += 1
    else:
        print ('第{}局电脑胜'.format(index+1))
        compunter_win += 1
    print ('--------第{}局结束-------'.format(index+1))

    if compunter_num == 2 :
        print ('电脑胜')
        break
    if user_num == 2 :
        print ('玩家胜')
        break
    else:
        #平3局    平1局 一胜一负  平2局 赢一局
        if deuce == 1 and compunter_win - user_win ==0 and index == 2:
            print ('平局')
        elif deuce == 3:
            print ('平局')
        elif deuce == 2 and index == 2:
            if  compunter_win - user_win == 1:
                print ('电脑胜')
            else:
                print ('玩家胜')

运行结果如下:


3.循环算法:

#for(int index =0 ; index <10 ; index ++)
#{
#       循环;迭代
# }
#for in 结构  index索引  range  范围

for index in range(10):
    print ('老兄你厉害')
    print (index)

循环运行结果如下:


4.循环开始至结束:

#值1:循环开始的位置
#值2:循环结束的位置
for index in range(50,100):
    print (index)
5.循环开始至结束及增量
#值1 :循环开始的位置
#值2:循环结束的位置
#值3:增量
for index in range(50,100,5):
    print (index)

unm = 100
unm = unm + 100
unm += 100
print (unm)
6.获取1~100之间所有的和
sum = 0
for x in  range(1,101):
    sum = sum + x
    print ('x=%s' % x)
    print (sum)

7.获取1~100之间所有奇数及5倍的差

ji_he = 0
bei_shu = 0
for index in range(1,101):
    if index % 2 == 1:
        ji_he = ji_he+index
    if index % 5 == 0:
            bei_shu=bei_shu + index
print (ji_he-bei_shu)

最后在说一下if条件判断表达式及局部变量和全局变量:

局部变量:影响部分代码,在部分代码中有效

全局变量:在所有代码中都有效            

注:在方法内部的变量是在=号前面的,那肯定是局部变量。如果是第一次出现在=号后

面的,那肯定是调用的全局变量;全局变量可以在函数里面调用,局部变量只能在对应的函

数里面调用,在该函数外面任何地方都无法被调用。

8.数字类型操作型:

    8.1:怎么判断输入数字为偶数:

num = input('请输入一个整数')
num = int(num)
if num % 2 == 0:
    print ('偶数')
else:
    print ('奇数')

    8.2:怎么判断一个数字即是3的倍数也是4的倍数:

num = 123
if num % 12 == 0 :
    print ('即是3的倍数也是4的倍数')
else:
    print ('不是3和4的倍数')


if num % 3 == 0 :
    if num % 4 == 0 :
        print ('是3的倍数')
    else:
     print ('不是4的倍数')
else:
    print ('不是3的倍数')
if num % 3 == 0 and num % 4 == 0 :
    print ('是3或4的倍数')

    8.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的倍数') 

注意:8.1-8.2-8.3用的都是:num input('输入一个整数')

                                             num = int (num)

 总结:and和or用于多个条件需要判断的情况下

    and:只要有一个条件为假,最终结果为假

条件1条件2结果
条件1条件2结果
条件1条件2结果

    or:只要有一个条件为真,最终结果为真

条件1条件2结果
条件1条件2结果
条件1条件2结果

9.插件random:

    9.1:框架,工具,包,插件random:随机

            从random包中引出随机整数的方法

            计算机当中的随机数也称之为;"伪随机数"

            计算机找随机数是根据计算机内部的算法来找到的

例:在0和3之间随机获得一个整数

from random import randint
number = randint(0,3)
print (number)
user_num = input('请输入你要猜的数字')
user_num = int(user_num)
computer_num = randint(0,3)
print (user_num)
if user_num == computer_num :
    print ('you win')
else:
    print ('you lose')

总:如果不是明显要局部变量和全局变量纠缠 能不纠缠就不纠缠。也就是定义变量名字的时候 要严格规范。按照开发规范来定义名字。全局大写或者加上“_”开头 

这是避免不必要问题的根本 

消灭问题如果实在是场景需求 

局部要操作修改赋值全局变量。那就使用global。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值