欢迎访问宙启技术站
智能推送

Python编写的留言板程序

发布时间:2023-12-04 10:34:43

以下是一个使用Python编写的留言板程序的例子:

import sqlite3

def create_table():
    conn = sqlite3.connect('messages.db')
    c = conn.cursor()
    c.execute('''CREATE TABLE IF NOT EXISTS messages
                 (id INTEGER PRIMARY KEY AUTOINCREMENT,
                  username TEXT NOT NULL,
                  message TEXT NOT NULL);''')
    conn.commit()
    conn.close()

def add_message(username, message):
    conn = sqlite3.connect('messages.db')
    c = conn.cursor()
    c.execute("INSERT INTO messages (username, message) VALUES (?, ?)", (username, message))
    conn.commit()
    conn.close()

def get_messages():
    conn = sqlite3.connect('messages.db')
    c = conn.cursor()
    c.execute("SELECT * FROM messages")
    messages = c.fetchall()
    conn.close()
    return messages

def main():
    create_table()
    
    while True:
        print("1. 添加留言")
        print("2. 查看留言")
        print("3. 退出")
        choice = input("请输入选项:")
        
        if choice == '1':
            username = input("请输入用户名:")
            message = input("请输入留言内容:")
            add_message(username, message)
            print("留言添加成功!")
        elif choice == '2':
            messages = get_messages()
            if len(messages) == 0:
                print("留言板为空")
            else:
                print("留言内容如下:")
                for message in messages:
                    print(f"用户名:{message[1]},留言内容:{message[2]}")
        elif choice == '3':
            break
        else:
            print("无效选项,请重新输入!")

if __name__ == '__main__':
    main()

这个留言板程序使用SQLite数据库来存储留言信息。程序的流程如下:

1. 首先定义了一个create_table函数,用于创建一个名为messages的数据表,该表包含三个列:id(自增主键)、username(用户名)和message(留言内容)。

2. add_message函数用于向数据表中插入一条留言记录,传入用户名和留言内容作为参数。

3. get_messages函数用于从数据表中获取所有的留言记录,并返回一个包含所有留言的列表。

4. main函数是程序的主要逻辑。程序会在一个无限循环中显示菜单选项,让用户选择添加留言、查看留言或退出程序。

- 如果用户选择添加留言,则会提示用户输入用户名和留言内容,并调用add_message函数将留言添加到数据表中。

- 如果用户选择查看留言,则会调用get_messages函数获取留言列表,并逐条打印出来。

- 如果用户选择退出,则跳出循环,程序结束。

使用这个留言板程序的例子(假设保存为message_board.py):

$ python message_board.py
1. 添加留言
2. 查看留言
3. 退出
请输入选项:1
请输入用户名:Alice
请输入留言内容:Hello, world!
留言添加成功!
1. 添加留言
2. 查看留言
3. 退出
请输入选项:2
留言内容如下:
用户名:Alice,留言内容:Hello, world!
1. 添加留言
2. 查看留言
3. 退出
请输入选项:3