下面是一个简单的信号管理系统的设计示例:

import pickle

class Signal:
    def __init__(self, name, frequency, power):
        self.name = name
        self.frequency = frequency
        self.power = power

class SignalManagementSystem:
    def __init__(self):
        self.signals = []

    def display_menu(self):
        print("信号管理系统")
        print("1. 添加信号信息")
        print("2. 查找信号信息")
        print("3. 删除信号信息")
        print("4. 修改信号信息")
        print("5. 保存信号信息到文件")
        print("6. 退出")

    def add_signal(self):
        name = input("请输入信号名称:")
        frequency = input("请输入信号频率:")
        power = input("请输入信号功率:")
        signal = Signal(name, frequency, power)
        self.signals.append(signal)
        print("信号信息添加成功!")

    def find_signal(self):
        name = input("请输入要查找的信号名称:")
        for signal in self.signals:
            if signal.name == name:
                print("信号名称:", signal.name)
                print("信号频率:", signal.frequency)
                print("信号功率:", signal.power)
                break
        else:
            print("未找到该信号信息!")

    def delete_signal(self):
        name = input("请输入要删除的信号名称:")
        for signal in self.signals:
            if signal.name == name:
                self.signals.remove(signal)
                print("信号信息删除成功!")
                break
        else:
            print("未找到该信号信息!")

    def modify_signal(self):
        name = input("请输入要修改的信号名称:")
        for signal in self.signals:
            if signal.name == name:
                signal.name = input("请输入新的信号名称:")
                signal.frequency = input("请输入新的信号频率:")
                signal.power = input("请输入新的信号功率:")
                print("信号信息修改成功!")
                break
        else:
            print("未找到该信号信息!")

    def save_to_file(self):
        filename = input("请输入保存文件的名称:")
        with open(filename, "wb") as file:
            pickle.dump(self.signals, file)
        print("信号信息保存成功!")

    def load_from_file(self):
        filename = input("请输入要加载的文件名称:")
        with open(filename, "rb") as file:
            self.signals = pickle.load(file)
        print("信号信息加载成功!")

    def run(self):
        while True:
            self.display_menu()
            choice = input("请输入操作项:")
            if choice == "1":
                self.add_signal()
            elif choice == "2":
                self.find_signal()
            elif choice == "3":
                self.delete_signal()
            elif choice == "4":
                self.modify_signal()
            elif choice == "5":
                self.save_to_file()
            elif choice == "6":
                break
            else:
                print("无效的操作项,请重新输入!")

system = SignalManagementSystem()
system.run()

你可以根据需要对该程序进行调试和优化


原文地址: https://www.cveoy.top/t/topic/hAUY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录