关于Python的一些基本知识(2)

上次,整理了一部分关于pathon的一些知识,这次同样介绍一些

这一次,也大致分为5个部分

第一部分 if 条件判断表达式

这一点在前面也有提到一些,这次主要补充一些新知识,下面是几个例子

age = 10
name ='小明'
if age < 4 :
    print('幼儿')
if age < 12 :
    print('儿童')
if age < 18 :
    print('青少年')
if age < 25 :
    print('青年')

if age < 100 :
    print('少于100')
else :
    print('大于100')

if age < 10 :
    print('age')
if name == '小明':
    print('小明')

从这里面,需要我们注意的有两点,一个是局部变量,另一个是全局变量。局部变量指的是,这部分变量值影响部分代码,在部分代码中有效。全局变量是指,这个变量是在全部代码中都有效。

第二部分 个税计算

个税计算,在我们以后的生活中会遇到,我们可以通过学习的知识,来写一个关于个税计算的小程序,会很方便我门的使用

salary = input('请输入你的工资')
# 将输入的内容转化成数字
salary = int(salary)
sanXian = 0
if salary >= 7662 :
    sanXian = 7662 * 0.225
else:
    sanXian = salary * 0.225
# 所得额
suoDeE = salary - sanXian - 3500
shuiLv = 0
kouChuShu = 0

if suoDeE <= 0 :
    print('loser')
else :
    if suoDeE <= 1500 :
        shuiLv = 0.03
    elif suoDeE <= 4500:
        shuiLv = 0.1
        kouChuShu = 105
    elif suoDeE <= 9000 :
        shuiLv = 0.2
        kouChuShu = 555
    elif suoDeE <=35000 :
        shuiLv = 0.25
        kouChuShu = 1005
    elif suoDeE <=55000 :
        shuiLv = 0.3
        kouChuShu =2755
    elif suoDeE <= 80000 :
        shuiLv = 0.35
        kouChuShu = 5505
    else :
        shuiLv = 0.45
        kouChuShu = 13505
    geShui = suoDeE * shuiLv - kouChuShu
    print(geShui)

第三部分 数字类型操作

数字的类型操作有很多种,我们列出一些经典的例子来供我们去学习和参考

问题1:怎么判断输入的数字 为偶数

num = input('请输入一个整数')
num = int(num)
# 9   '9'
# TypeError: not all arguments converted during string formatting
if num % 2 == 0 :
    print('偶数')
else :
    print('奇数')

问题2:怎么判断一个数字既是3的倍数也是4的倍数

num = 123122

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


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


#-------------------  and 而且
if num % 3 == 0 and num % 4 ==0 :
    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的倍数')

在以上的这些小程序中,我们遇到了关于or和and的一些问题,我们可以总结如下

and和or用于多个条件需要判断的情况下,以两个条件举例and:只要有一个条件为假,最终结果就为假
条件1    真    条件2    真     结果:真
条件1    假    条件2    真     结果:假
条件1    假    条件2    假     结果:假
or :只要有一个条件为真,最终结果就为真
条件1    真    条件2    真     结果:真
条件1    真    条件2    假     结果:真
条件1    假    条件2    假     结果:假

第四部分 石头剪子布

这是一个关于锻炼我们学习这些基本知识的一个小程序的联系,十分的有意思,我们可以用数字来代替我们平时认识的石头剪子和布,比如我们用0代表石头,1代表剪子,2代表布

computer_num = randint(0 , 2)
print(computer_num)
if user_num.isdigit():
    user_num = int(user_num)
    if  0 <= user_num <= 2 :
        if user_num - computer_num == -1 or user_num - computer_num == 2:
            print('you win')
        elif user_num - computer_num == 0 :
            print('deuce')
        else :
            print('you lose')
    else :
        print('输入的数值大于有效范围')
else :
    print('输入的内容格式错误,请输入0~2之间的一个数值')

感兴趣的话,可以多练习一下

第五部分   for 循环

首先,我们先通过一些简单的例子来了解一下for循环

for index in range(10):
    print('老婆,我错了')
    print(index)

# 值1:循环开始的位置
# 值2:循环结束的位置
for index in range(50 ,100):
    print(index)

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

num = 100
num = num + 100
num += 100
print(num)

通过简单例子我们可以考虑一下问题

问题 1 获取1~100之间所有数字的和

sum = 0
for x  in range(1,101):
    sum = sum + x
    print('x=%s'% x)
print(sum)

问题 2 获取1~100之间所有奇数之和与5的倍数之和的差

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

下面我们来完成一个稍微复杂的小游戏程序来更好地掌握我们的只是吧,这个游戏也是剪刀石头布,不过我们加一个规则就是要求玩3把来分输赢

from random import randint
user_win = 0
compunter_win = 0
deuce = 0
# index 代表标号  value代表值
# for index ,value in enumerate('Hello wolrd'):
for index ,value in enumerate(range(3)):

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

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

    if compunter_win == 2 :
        print('电脑胜')
        break
    elif user_win == 2:
        print('玩家胜')
        break
    else:
        # 平1局 一胜一负  平两局 赢一局  平三局
        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('玩家胜')
如果喜欢的话就多多联系吧,往后还会有持续的一些更新,喜欢的话,请多多支持,留下宝贵意见。






猜你喜欢

转载自blog.csdn.net/weixin_42539547/article/details/80833701