基于python的房屋租赁系统
2023-12-24 01:48:27
目录
如果是房东,则可以添加房屋的信息,如果是租客,则可以选择房屋
代码实现
class House:
def __init__(self, house_id, size, price, is_rented=False):
# 初始化房屋属性
self.house_id = house_id
self.size = size
self.price = price
self.is_rented = is_rented
class Landlord:
def __init__(self, name):
# 初始化房东属性
self.name = name
self.houses = []
def add_house(self, house):
# 房东添加房屋的方法
self.houses.append(house)
print(f"{self.name}成功添加房屋,房屋ID: {house.house_id}")
def display_houses(self):
# 房东查看自己的房屋列表的方法
print(f"{self.name}的房屋列表:")
for house in self.houses:
print(f"房屋ID: {house.house_id}, 大小: {house.size}平米, 价格: {house.price}元/月, 状态: {'已出租' if house.is_rented else '未出租'}")
class Tenant:
def __init__(self, name):
# 初始化租客属性
self.name = name
self.rented_house = None
def rent_house(self, house):
# 租客租房的方法
if not house.is_rented:
self.rented_house = house
house.is_rented = True
print(f"{self.name}成功租住房屋{house.house_id}")
else:
print("房屋已经被租出去了。")
# 创建租赁系统
class RentalSystem:
def __init__(self):
self.users = []
def add_user(self, user):
# 添加用户到系统的方法
self.users.append(user)
def login(self, username, role):
# 用户登录的方法
user = next((u for u in self.users if u.name == username), None)
if user and isinstance(user, role):
return user
else:
print("登录失败。")
# 示例用法
rental_system = RentalSystem()
# 创建房东和租客对象
landlord = Landlord("房东A")
tenant = Tenant("租客B")
# 添加用户到租赁系统
rental_system.add_user(landlord)
rental_system.add_user(tenant)
# 用户登录
user_type = input("请选择登录角色(房东/租客): ")
username = input("请输入用户名: ")
if user_type == "房东":
user = rental_system.login(username, Landlord)
if user:
# 房东添加房屋
house = House(1, 60, 1500)
user.add_house(house)
# 房东查看房屋列表
user.display_houses()
else:
user = rental_system.login(username, Tenant)
if user:
# 租客选择并租住房屋
user.rent_house(house)
代码实现
下面是一个简单的Python房屋租赁系统示例,包括房东和租客两种角色的登录和功能。请注意,这只是一个基本的示例,实际系统可能需要更多功能和安全性的考虑。
?
class House:
? ? def __init__(self, house_id, size, price, is_rented=False):
? ? ? ? self.house_id = house_id
? ? ? ? self.size = size
? ? ? ? self.price = price
? ? ? ? self.is_rented = is_rented
class User:
? ? def __init__(self, username, role):
? ? ? ? self.username = username
? ? ? ? self.role = role
class Landlord(User):
? ? def __init__(self, username):
? ? ? ? super().__init__(username, role="房东")
? ? ? ? self.houses = []
? ? def add_house(self, house):
? ? ? ? self.houses.append(house)
? ? def display_houses(self):
? ? ? ? print(f"{self.username}的房屋列表:")
? ? ? ? for house in self.houses:
? ? ? ? ? ? status = "已出租" if house.is_rented else "未出租"
? ? ? ? ? ? print(f"房屋ID: {house.house_id}, 大小: {house.size}平米, 价格: {house.price}元/月, 状态: {status}")
class Tenant(User):
? ? def __init__(self, username):
? ? ? ? super().__init__(username, role="租客")
? ? ? ? self.rented_house = None
? ? def rent_house(self, house):
? ? ? ? if not house.is_rented:
? ? ? ? ? ? self.rented_house = house
? ? ? ? ? ? house.is_rented = True
? ? ? ? ? ? print(f"{self.username}成功租住房屋{house.house_id}")
? ? ? ? else:
? ? ? ? ? ? print("房屋已经被租出去了。")
# 简化的租赁系统
class RentalSystem:
? ? def __init__(self):
? ? ? ? self.users = []
? ? def add_user(self, user):
? ? ? ? self.users.append(user)
? ? def login(self, username, role):
? ? ? ? user = next((u for u in self.users if u.username == username and u.role == role), None)
? ? ? ? return user
# 示例用法
rental_system = RentalSystem()
landlord = Landlord("房东A")
tenant = Tenant("租客B")
rental_system.add_user(landlord)
rental_system.add_user(tenant)
house1 = House(1, 60, 1500)
house2 = House(2, 80, 2000)
landlord.add_house(house1)
landlord.add_house(house2)
# 房东查看房屋列表
landlord.display_houses()
# 租客租房
tenant.rent_house(house1)
# 房东再次查看房屋列表
landlord.display_houses()
这个示例包括房东和租客两种用户类型,房东可以添加和管理房屋信息,租客可以选择并租住房屋。在实际应用中,你可能需要添加更多的功能,例如用户身份验证、异常处理、数据库存储等。
文章来源:https://blog.csdn.net/qq_50942093/article/details/135119803
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!