python类和实例
Posted 海纳柏川
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python类和实例相关的知识,希望对你有一定的参考价值。
1、创建一个狗类,初始化有名字和年龄,创建两个方法蹲下和打滚,然后分别调用这两个狗的属性和方法
class Dog(): def __init__(self,name,age): self.name =name self.age =age def dunxia(self): print(self.name.title() + " now dun xia !") def dagun(self): print(self.name.title() + " now da gun !") my_dog = Dog(‘xiao ji‘, 6) you_dog = Dog("da ji ",8) print("My dog‘s name is " + my_dog.name.title() + ".") print("My dog is " + str(my_dog.age) + " years old.") my_dog.name my_dog.dunxia() my_dog.dagun() print("My dog‘s name is " + you_dog.name.title() + ".") print("My dog is " + str(you_dog.age) + " years old.") you_dog.name you_dog.dunxia() you_dog.dagun()
2、餐馆 :
创建一个名为 Restaurant 的类,其方法 __init__() 设置两个属性: restaurant_name 和 cuisine_type 。创建一个名
为 describe_restaurant() 的方法和一个名为 open_restaurant() 的方法,其中前者打印前述两项信息,而后者打印一条消息,指出餐馆正在营业。
根据这个类创建一个名为 restaurant 的实例,分别打印其两个属性,再调用前述两个方法。
就餐人数 :
添加一个名为 number_served 的属性,并将其默认值设置为 0 。根据这个类创建一个名为 restaurant 的实例;打印有多少人在这家餐馆就餐过,然后修改这个值并再次打印它。
添加一个名为 set_number_served() 的方法,它让你能够设置就餐人数。调用这个方法并向它传递一个值,然后再次打印这个值。
添加一个名为 increment_number_served() 的方法,它让你能够将就餐人数递增。调用这个方法并向它传递一个这样的值:你认为这家餐馆每天可能接待的就餐人数。
class Restaurant(): def __init__(self,restaurant_name,cuisine_type): self.restaurant_name =restaurant_name self.cuisine_type = cuisine_type self.number_served=0 def describe_restaurant(self): print(self.restaurant_name + "主题餐厅") print(self.cuisine_type + "各种豪华满汉全席") def open_restaurant(self,number_served): print(self.restaurant_name + "正在营业。") def read_number(self): print("现在营业有"+str(self.number_served) + "人") def set_number_served(self,sets): self.number_served= sets print("设置的就餐人数是 "+ str(sets) +" 人") def increment_number_served(self,adds): self.number_served +=adds print("增加的就餐人数是 " + str(adds) +" 人") restaurant = Restaurant("好吃不贵","[‘饺子‘,‘面条‘,‘炒饼‘,‘炒面‘,‘盖饭‘]") restaurant.restaurant_name restaurant.cuisine_type restaurant.describe_restaurant() restaurant.open_restaurant(5) #2、 三家餐馆 :编写的类创建三个实例,并对每个实例调用方法 describe_restaurant() 。 restaurant = Restaurant("山西面馆","刀削面等") restaurant.describe_restaurant() restaurant = Restaurant("山东面馆","油条等") restaurant.describe_restaurant() restaurant = Restaurant("陕西面馆","咸菜等") restaurant.describe_restaurant() #调用设置人数,增加人数,查看现在的总人数 restaurant.set_number_served(100) restaurant.read_number() restaurant.increment_number_served(150) restaurant.read_number()
3、
用户 :创建一个名为 User 的类,其中包含属性 first_name 和 last_name ,还有用户简介通常会存储的其他几个属性。在类 User 中定义一个名
为 describe_user() 的方法,它打印用户信息摘要;再定义一个名为 greet_user() 的方法,它向用户发出个性化的问候。
创建多个表示不同用户的实例,并对每个实例都调用上述两个方法。
尝试登录次数 :在User 类中,添加一个名为 login_attempts 的属性。编写一个名为 increment_login_attempts() 的方法,
它将属性 login_attempts 的值加 1 。再编写一个名为 reset_login_attempts() 的方法,它将属性 login_attempts 的值重置为 0 。
根据 User 类创建一个实例,再调用方法 increment_login_attempts() 多次。打印属性 login_attempts 的值,确认它被正确地递增;然后,调用方
法 reset_login_attempts() ,并再次打印属性 login_attempts 的值,确认它被重置为 0 。
class User(): def __init__(self,first_name,last_name,login_attempts): self.first_name = first_name self.last_name =last_name self.login_attempts = login_attempts def describe_user(self,qq,phonenumber,address): self.qq=qq self.phonenumber=phonenumber self.address=address print("user qq is "+str(qq),"user phonenumber is "+str(phonenumber),"user address is"+ address) def greet_user(self): print(self.first_name + self.last_name + " hello welcome to china !") def read_count(self): print("now count is " + str(self.login_attempts)) def increment_login_attempts(self): m1=self.login_attempts + 1 print("add after is "+ str(m1)) def reset_login_attempts(self): reset =self.login_attempts=0 print("reset count is " + str(reset)) user1=User("李","小龙",10) user2=User("张","小龙",20) user1.describe_user(123456,13365678689,"北极") user1.greet_user() user2.describe_user(98077,13889775345,"南极") user2.greet_user() #调用增加和重置 user1.increment_login_attempts() user1.reset_login_attempts() user1.read_count() user2.increment_login_attempts() user2.reset_login_attempts() user2.read_count()
以上是关于python类和实例的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )(代码片段