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))
相關文章
相關標籤/搜索