python“对象”的应用

建立会员管理系统,系统里有会员类,有属性:会员号、姓名、性别、生日、电话号码、等级、积分等,操作有修改积分、修改等级,显示自身信息等。

系统里可以查询会员(可以根据电话号码查询),兑换积分,根据积分修改等级,等级有(银卡、金卡、黑金卡)对应打折(9.5折、9折、8.5折)等等功能。

# 会员信息系统
import time

print("会员信息管理系统".center(26, '*'))
admin_user = 'tan'
admin_password = 'ke'
list_zh = []
list_pwd = []
i=3

while i:
    user_input = input('请输入管理员账号:')
    pwd_input = input('请输入管理员密码:')
    if user_input == admin_user and pwd_input == admin_password:
        print('管理员登录成功!'.center(16, '☆'))
        print('欢迎回来'.center(20, '☆'))
        time.sleep(2)
        while True:
            print("""
              ☆☆☆☆☆☆会员操作☆☆☆☆☆☆
        1-  ☆☆☆☆☆☆添加会员信息☆☆☆☆☆☆
        2-  ☆☆☆☆☆☆删除会员信息☆☆☆☆☆☆
        3-  ☆☆☆☆☆☆查看会员信息☆☆☆☆☆☆
        4-  ☆☆☆☆☆☆修改会员信息☆☆☆☆☆☆
        5-       ★★★★★退出★★★★★
        """)
            a = int(input("您要进行的操作是:"))
            if a == 1:
                print('添加会员信息'.center(16, '★'))
                print()
                list_zh.append(input("您要添加的账号:"))
                list_pwd.append(input("您要添加的密码:"))
                print("添加成功!")
                time.sleep(2)
            elif a == 2:
                print('删除会员信息'.center(16, '★'))
                del_name = input("请输入要删除的会员账号:")
                if del_name not in list_zh:
                    print("用户名%s不存在,请重新操作!" % del_name)
                else:
                    listIndex = list_zh.index(del_name)
                    list_zh.remove(del_name)
                    list_pwd.pop(listIndex)
                    print("用户%s删除成功!" % del_name)
                    time.sleep(2)
            elif a == 3:
                print('查看会员信息'.center(16, '★'))
                print("会员信息".center(10, '☆'))
                listLen = len(list_zh)
                print('\t用户名\t密码')
                for i in range(listLen):
                    print("\t%s\t%s" % (list_zh[i], list_pwd[i]))
                    time.sleep(2)
            elif a == 4:
                print('修改会员信息'.center(16, '★'))
                j = input("请输入要修改的账号:")
                if j not in list_zh:
                    print('要修改的账号不存在,请重新操作!')
                else:
                    b = (list_zh.index(j) - 1)
                    list_zh[b] = input("请输入修改后的账号:")
                    while list_zh[b] == j:
                        print("账号不能与上次相同,请重新输入:")
                        list_zh[b] = input("")
                J = input("请输入要修改的密码:")
                if J not in list_pwd:
                    print('要修改的密码不存在,请重新操作!')
                else:
                    B = (list_pwd.index(J) - 1)
                    list_pwd[B] = input("请输入修改后的密码:")
                    while list_pwd[B] == J:
                        print("密码不能与上次相同,请重新输入:")
                        list_pwd[B] = input("")
                        print("修改成功!")
                time.sleep(3)
            elif a == 5:
                print("欢迎下次使用!")
                print('再见'.center(20, '★'))
                time.sleep(3)
                exit()
            else:
                print("""
        1.添加
        2.删除
        3.查看
        4.修改
        5.退出""")
                print("系统无法识别您的指令,稍后请重新输入!")
                time.sleep(3)
    else:
        i-=1
        print('登录失败,请输入正确的管理员账号和密码!')
        print('你还有%d次机会'%i)

以下内容部分参考ChatGPT模型:


你好,对于你的会员管理系统,你可以使用Python中的类来实现会员类的属性和操作。以下是一个简单的例子:

class Member:
    def __init__(self, member_id, name, gender, birthday, phone_number, level, points):
        self.member_id = member_id
        self.name = name
        self.gender = gender
        self.birthday = birthday
        self.phone_number = phone_number
        self.level = level
        self.points = points
    
    def modify_points(self, amount):
        self.points += amount
    
    def modify_level(self, new_level):
        self.level = new_level
    
    def display_info(self):
        print("Member ID:", self.member_id)
        print("Name:", self.name)
        print("Gender:", self.gender)
        print("Birthday:", self.birthday)
        print("Phone Number:", self.phone_number)
        print("Level:", self.level)
        print("Points:", self.points)

在上面的代码中,我们定义了一个名为Member的类,它有七个属性:会员号、姓名、性别、生日、电话号码、等级和积分。我们还定义了三个操作:修改积分、修改等级和显示自身信息。这些操作可以通过类的实例调用。

对于查询会员和根据积分兑换的操作,你可以在管理系统中添加相应的函数来实现。例如,以下是一个简单的查询函数:

def find_member_by_phone_number(phone_number, members):
    for member in members:
        if member.phone_number == phone_number:
            return member
    return None

在上面的代码中,我们定义了一个名为find_member_by_phone_number的函数,它接受一个电话号码和一个会员列表作为参数,并返回匹配的会员对象。如果没有找到匹配的会员,则返回None。

对于根据积分兑换的操作,你可以在会员类中添加一个兑换积分的方法。例如,以下是一个简单的兑换积分的方法:

def redeem_points(self, amount):
    if self.points >= amount:
        self.points -= amount
        return True
    else:
        return False

在上面的代码中,我们定义了一个名为redeem_points的方法,它接受一个数量作为参数,并从会员的积分中减去相应的数量。如果会员的积分足够,方法返回True;否则,方法返回False。

希望这些代码可以帮助你实现你的会员管理系统。


如果我的建议对您有帮助、请点击采纳、祝您生活愉快