Python基础 六道简单练习

python作业完成的,有些地方没有完善,多多包涵

目录

1.函数实现:随机(使用random中的randint实现)生产20个学生成绩,根据成绩去判断学生的成绩等级

#2.结合之前的(人机猜拳游戏)案例模拟老虎棒子鸡游戏#老虎棒子鸡说明:1,老虎可以吃鸡(老虎赢),2,鸡可以吃虫子(鸡赢)3,棒子打老虎(棒子赢)4,棒子可以打鸡(棒子赢)5,虫子可以腐蚀棒子(虫子赢)#结合猜拳的特点,实现老虎棒子鸡的多种可能的游戏模拟

#3.输入某年某月某日,判断这一天是这一年的第几天?

#4.1-100之间可以被6整除的个数

#5.面向对象试题#定义3个类:  ()代表类的属性#狗(姓名,年龄(默认一岁))  对应功能  吃饭,玩,看家(输出格式:名字是XX,年龄xx的小狗在xx)#猫(姓名,年龄,默认一岁)    对应功能  吃饭,玩,看家(输出格式:名字是XX,年龄xx的小猫在xx)#人 (姓名,年龄,默认18)    对应功能  吃饭,睡觉,上学,养宠物

#6.随机输入一个八位以内的整数,求它是几位数,然后逆序打印其他数字


 

1.函数实现:随机(使用random中的randint实现)生产20个学生成绩,根据成绩去判断学生的成绩等级

##1.函数实现:
# 随机(使用random中的randint实现)生产20个学生成绩
# 根据成绩去判断学生的成绩等级(结合之前案例)
import random
def Judgment_result(score):
    if score>90:
        print('您成绩是:',score,'等级:优秀')
    elif score>70 and score<90:
        print('您成绩是:',score,'等级:良好')
    elif score > 60 and score < 70:
        print('您成绩是:',score,'等级:及格')
    else:
        print('您成绩是:',score,'等级:不及格')

if __name__ == '__main__':
    for i in range(0,21):
        Judgment_result(random.randint(0,100))


#2.结合之前的(人机猜拳游戏)案例模拟老虎棒子鸡游戏
#老虎棒子鸡说明:1,老虎可以吃鸡(老虎赢),2,鸡可以吃虫子(鸡赢)3,棒子打老虎(棒子赢)4,棒子可以打鸡(棒子赢)5,虫子可以腐蚀棒子(虫子赢)
#结合猜拳的特点,实现老虎棒子鸡的多种可能的游戏模拟
 

#2.结合之前的(人机猜拳游戏)案例模拟老虎棒子鸡游戏
#老虎棒子鸡说明:1,老虎可以吃鸡(老虎赢),
#              2,鸡可以吃虫子(鸡赢)
#              3,棒子打老虎(棒子赢)
#              4,棒子可以打鸡(棒子赢)
#              5,虫子可以腐蚀棒子(虫子赢)
#结合猜拳的特点,实现老虎棒子鸡的多种可能的游戏模拟

'''
规则没懂 按着石头剪刀布的规则制定了一个
步骤一:创建玩家,创建老虎,棒子,鸡集合
步骤二:玩家猜拳
步骤三:电脑随机生成猜拳
步骤四:生成结果(制定游戏规则)+五局三胜
步骤五:输入结果
'''
import random
sum=0


def Rule(list):#制定规则
    global sum

    player = input('请输入您的选项:1:【老虎】  2:【棒子】  3:【鸡】')
    com = random.choice(list)

    if player=='老虎'or player=='1':
        if( com=='鸡'):
            print('win!','您的选择是 老虎 vs 鸡')
            sum=sum+1
        elif( com=='棒子'):
            print('lose!','您的选择是 老虎 vs 棒子')
        else:
            print('deuce!', '您的选择是 老虎 vs 老虎')
    elif player=='棒子'or player=='2':
        if(com=='老虎'):
            print('win!', '您的选择是 棒子 vs 老虎')
            sum=sum+1
        elif(com=='棒子'):
            print('deuce!','您的选择是 棒子 vs 棒子')
        else:
            print('lose!', '您的选择是 棒子 vs 鸡')


    elif player == '鸡' or player == '3':
        if(com=='老虎'):
            print('lose!', '您的选择是 鸡 vs 老虎')
        elif(com=='棒子'):
            print('win!','您的选择是 鸡 vs 棒子')
            sum=sum+1
        else:
            print('deuce!', '您的选择是 鸡 vs 鸡')
    else:
        print('请重新输入')


def panduan():#判断结果并输入
    if sum >= 3:
        print('恭喜你赢了,成绩是五局', sum, '胜')
    else:
        print('不好意思,您只赢了', sum, '局,请再接再厉')
if __name__ == '__main__':
    print('==============欢迎来到老虎棒子鸡游戏===============')
    list = ['老虎', '棒子', '鸡']#生成列表
     #电脑随机生成猜拳

    for i in range(0,5):
        Rule(list)
    panduan()

#3.输入某年某月某日,判断这一天是这一年的第几天?

#3.输入某年某月某日,判断这一天是这一年的第几天?
import time
import datetime
#   year%400==0)or((year%4==0)and(year%100!=0)
#t_str = input('请以xxxx-xx-xx 的格式输入日期')
if __name__ == '__main__':

   year=int(input('请输入年份'))
   mouth=int(input('请输入x月'))
   date_time=int(input('请输入X日'))
   sum=0
   if (year%400==0)or((year%4==0)and(year%100!=0)):
       mouths=[0,31,60,91,121,152,182,213,244,274,305,335,366]

       sum=mouths[mouth-1]+date_time

   else:
       mouths=[0,31,59,90,120,151,181,212,243,273,304,334,365]
       sum=mouths[mouth-1]+date_time

   print(sum)

#4.1-100之间可以被6整除的个数
 

#4. 1-100之间可以被6整除的个数
'''
for循环遍历
'''
if __name__ == '__main__':
    arr=[]
    for i in range(0,101):
        if(i%6==0):
            #可以被6整除的数添加到数组中
            arr.append(i)

print('1-100之间可以被6整除的数有',arr)
print('一共有',len(arr),'个')

#5.面向对象试题
#定义3个类:  ()代表类的属性
#狗(姓名,年龄(默认一岁))  对应功能  吃饭,玩,看家(输出格式:名字是XX,年龄xx的小狗在xx)
#猫(姓名,年龄,默认一岁)    对应功能  吃饭,玩,看家(输出格式:名字是XX,年龄xx的小猫在xx)
#人 (姓名,年龄,默认18)    对应功能  吃饭,睡觉,上学,养宠物

 

被同学说没有人机交互。。。修改了一下代码

年龄可以用input同样的方法设置

#5.面向对象试题
#定义3个类:  ()代表类的属性
#狗(姓名,年龄(默认一岁))  对应功能  吃饭,玩,看家(输出格式:名字是XX,年龄xx的小狗在xx)
#猫(姓名,年龄,默认一岁)    对应功能  吃饭,玩,看家(输出格式:名字是XX,年龄xx的小猫在xx)
#人 (姓名,年龄,默认18)    对应功能  吃饭,睡觉,上学,养宠物
'''

class Dog:
    def __init__(self,name,age):#初始化
        self.age=1
        self.name=name
    def eat(self):
        print('名字是',self.name,'年龄为',self.age,'的小狗正在吃')

    def play(self):
        print('名字是',self.name,'年龄为',self.age,'的小狗正在玩')

    def Housekeeping(self):
        print('名字是',self.name,'年龄为',self.age,'的小狗正在看家')


class Cat:
    def __init__(self, name, age):  # 初始化
        self.age = 1
        self.name = name

    def eat(self):
        print('名字是', self.name, '年龄为', self.age, '的小猫正在吃')

    def play(self):
        print('名字是', self.name, '年龄为', self.age, '的小猫正在玩')
    def Housekeeping(self):
        print('名字是', self.name, '年龄为', self.age, '的小猫正在看家')
class Person:
    def __init__(self,name,age):#初始化
        self.age=18
        self.name=name
    def eat(self):
        print(self.name,'正在吃')

    def sleep(self):
        print(self.name,'正在入睡.... ')

    def gotoschool(self):
        print(self.name,'上学中')
    def pet(self):
        print(self.name,'养宠物')
def dog_choice():
    Dog_choice = input('请选择狗狗的状态:1【吃】 2【看家】 3【玩】')
    print(Dog_choice)
    if Dog_choice == '1' or Dog_choice == '吃':
        jinmao.eat()
    elif Dog_choice == '2' or Dog_choice == '看家':
        jinmao.Housekeeping()
    elif Dog_choice == '3' or Dog_choice == '玩':
        jinmao.play()
    else:
        print('没有该选项请重新输入')
        dog_choice()

def cat_choice():
    Cat_choice = input('请选择猫猫的状态:1【吃】 2【看家】 3【玩】')
    if Cat_choice == '1 'or Cat_choice == '吃':
        maomao.eat()
    elif Cat_choice == '2' or Cat_choice == '看家':
        maomao.Housekeeping()
    elif Cat_choice == '3'or Cat_choice == '玩':
        maomao.play()
    else:
        print('没有该选项请重新输入')
        cat_choice()



def person_choice():
     Person_choice = input('请选择人的状态:1【吃】 2【睡觉】 3【上学】 4【养宠物】')
     if Person_choice == '1 'or Person_choice == '吃':
        person.eat()
     elif Person_choice == '2' or Person_choice == '睡觉':
        person.sleep()
     elif Person_choice == '3' or Person_choice== '上学':
        person.gotoschool()
     elif Person_choice=='4' or Person_choice=='养宠物':
         person.pet()
     else:
         print('没有该选项请重新输入')
         person_choice()



if __name__ == '__main__':
    Dog_name=input('请设置狗狗的名字')
    jinmao=Dog(Dog_name,2)#创建一个金毛狗狗对象
    dog_choice()
    Cat_name = input('请设置猫猫的名字')
    maomao=Cat(Cat_name,3)#创建猫
    cat_choice()
    Person_name = input('请设置人的名字')
    person=Person(Person_name,20)
    person_choice()

#6.随机输入一个八位以内的整数,求它是几位数,然后逆序打印其他数字

#6.随机输入一个八位以内的整数,求它是几位数,然后逆序打印其他数字\

#步骤:1输入一个数字--(调用panduan方法)-->判断是否为八位数以内---YES--->倒叙打印输出
#                                                       ---NO--->调用getnum方法重新输入
def getnum():
    num=input('请输入一个整数')
    panduan(num)

def panduan(num):
    if len(num)>8:
        # 超出数字范围 重新输入328647
        print('已超过八位,请重新输入新的整数')
        getnum()
    else:
        printnum(num)
def printnum(num):
    print('这是一个', int(len(num)), '位数')
    print(''.join(list(reversed(num))))


if __name__ == '__main__':
    num = input('请输入一个整数')
    panduan(num)










 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值