• python基础学习--类--附代码


    1:创建一个名为 User 的类:
    1)其中包含属性 first_name 和 last_name,还有用户简介通常会存储的其他几个属性,均是自定义, 请放在初始化函数里面。
    2)在类 User 中定义一个名为 describe_user()的方法,它打印用户信息摘要;
    3)再定义一个名为 greet_user()的方法,它向用户发出个性化的问候。:
    请创建多个表示不同用户的实例,并对每个实例都调用上述两个方法。
     
    class User:
    
        def __init__(self, first_name, last_name, sex, age):
            self.first_name = first_name
            self.last_name = last_name
            self.sex = sex
            self.age = age
    
        def describe_user(self):
            print("用户姓名:{} {} 性别为:{}  年龄为:{}".format(self.first_name.title(), self.last_name.title(), self.sex, self.age))
    
        def greet_user(self):
            print('欢迎{} {}用户'.format(self.first_name.title(), self.last_name.title()))
    
    
    user1 = User("cui", "dida", "", 12)
    user1.describe_user()
    user1.greet_user()
    user1 = User("ma", "dongmei", "", 40)
    user1.describe_user()
    user1.greet_user()
    user1 = User("dai", "weide", "", 29)
    user1.describe_user()
    user1.greet_user()
    2:定义一个学生类。
    1)有下面的类属性: 1 姓名 2 年龄 3 成绩(语文,数学,英语)[每课成绩的类型为整数] ,均放在初始化函数里面。
    2)类方法:
    a)获取学生的姓名:get_name() 返回类型:str b)获取学生的年龄:get_age() 返回类型:int
    c) 返回3门科目中最高的分数。get_course() 返回类型:int
    写好类以后,可以定义2个同学测试下: zm = Student('zhangming',20,[69,88,100]) 返回结果: zhangming 20 100
     
    class Student:
        def __init__(self, name, age, score):
            self.name = name
            self.age = age
            self.score = score
    
        def get_name(self):
            return self.name.title()
    
        def get_age(self):
            return self.age
    
        def get_course(self):
            return max(self.score)
    
    
    student1 = Student("wangming", 15, [98, 89, 34])
    name1 = student1.get_name()
    age1 = student1.get_age()
    course1 = student1.get_course()
    print("{} {} {}".format(name1, age1, course1))
    student2 = Student("lijia", 9, [70, 65, 91])
    name2 = student2.get_name()
    age2 = student2.get_age()
    course2 = student2.get_course()
    print("{} {} {}".format(name2, age2, course2))
    3。人和机器猜拳游戏写成一个类,有如下几个函数:
    1)函数1:选择角色1 曹操 2张飞 3 刘备
    2)函数2:角色猜拳1剪刀 2石头 3布 玩家输入一个1-3的数字
    3)函数3:电脑出拳 随机产生1个1-3的数字,提示电脑出拳结果
    4)函数4:角色和机器出拳对战,对战结束后,最后出示本局对战结果...赢...输,然后提示用户是否继续?按y继续,按n退出。
    5)最后结束的时候输出结果 角色赢几局 电脑赢几局,平局几次 游戏结束
     
    a=0
    b=0
    c=0
    class Guess_num:
    
        def select_role(self):
            global role
            temp = int(input("请选择一个角色,1:曹操  2:张飞  3:刘备"))
            if temp == 1:
                role = "曹操"
            elif temp == 2:
                role = "张飞"
            else:
                role = "刘备"
    
        def role_guess(self):
            global guess1
            guess1 = int(input("请选择1:剪刀 2:石头  3:布"))
            if guess1 == 1:
                print("{}出拳:剪刀".format(role))
            elif guess1 == 2:
                print("{}出拳:石头".format(role))
            elif guess1 == 3:
                print("{}出拳:布".format(role))
    
        def computer_guess(self):
            global guess2
            guess2 = random.randint(1, 3)
            if guess2 == 1:
                print("电脑出拳:剪刀")
            elif guess2 == 2:
                print("电脑出拳:石头")
            else:
                print("电脑出拳:布")
    
        def compare_guess(self):
            global a
            global b
            global c
    
            while True:
                self.select_role()
                self.role_guess()
                self.computer_guess()
                if guess1 == guess2:
                    print("平局!")
                    a+=1
                    judge = input("按y继续,按n退出")
                    if judge == "n":
                        break
                elif guess1 == 1:
                    if guess2 == 2:
                        print("电脑赢,{}输!".format(role))
                        b+=1
                        judge = input("按y继续,按n退出")
                        if judge == "n":
                            break
                    else:
                        print("{}赢,电脑输!".format(role))
                        c+=1
                        judge = input("按y继续,按n退出")
                        if judge == "n":
                            break
                elif guess1 == 2:
                    if guess2 == 1:
                        print("{}赢,电脑输!".format(role))
                        c+=1
                        judge = input("按y继续,按n退出")
                        if judge == "n":
                            break
                    else:
                        print("电脑赢,{}输!".format(role))
                        b+=1
                        judge = input("按y继续,按n退出")
                        if judge == "n":
                            break
                elif guess1 == 3:
                    if guess2 == 1:
                        print("电脑赢,{}输!".format(role))
                        b+=1
                        judge = input("按y继续,按n退出")
                        if judge == "n":
                            break
                    else:
                        print("{}赢,电脑输!".format(role))
                        c+=1
                        judge = input("按y继续,按n退出")
                        if judge == "n":
                            break
    
    
    zz = Guess_num()
    zz.compare_guess()
    print("角色赢{},电脑赢{},平局{}".format(c,b,a))
  • 相关阅读:
    Linux zip打包排除某个目录或只打包某个目录
    解决coreseek及sphinx查询结果不全--匹配参数详解
    curl错误28:Resolving timed out after 15009 milliseconds解决方案
    PHP实现关键词全文搜索Sphinx及中文分词Coreseek的安装配置
    Nginx指定多个域名跨域配置
    PHP友盟推送消息踩坑及处理
    Redis批量删除的方法
    Redis数据类型及常用方法整理
    PHPExcel导入导出常用方法总结
    [633] 平方数之和
  • 原文地址:https://www.cnblogs.com/Elaine1/p/10434550.html
Copyright © 2020-2023  润新知