使用Python3 编写简单信用卡管理程序

yizhihongxing

以Python3编写简单信用卡管理程序,需要以下步骤:

步骤1:创建数据库

可以使用SQLite数据库,即Python自带的轻量级关系型数据库,以下是创建数据库的代码块:

import sqlite3

# 连接数据库
conn = sqlite3.connect('card_manage.db')
# 创建curson对象
cursor = conn.cursor()
# 建表
cursor.execute('''CREATE TABLE card(
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        card_number VARCHAR(20),
        name VARCHAR(50),
        balance REAL DEFAULT 0 
        )''')
# 提交数据库执行
conn.commit()
# 关闭数据库连接
conn.close()

以上代码会创建一个名为card_manage.db的SQLite数据库,并在其中创建一个名为card的表。表中有id、card_number、name和balance四个字段,其中id是自增主键,card_number是信用卡卡号,name是持卡人姓名,balance是信用卡余额。

步骤2:编写函数

接下来需要编写函数来实现程序的具体功能,以下是代码块示例:

import sqlite3

# 连接数据库
def connect_db():
    conn = sqlite3.connect('card_manage.db')
    cursor = conn.cursor()
    return conn, cursor

# 添加信用卡
def add_card(card_number, name):
    conn, cursor = connect_db()
    cursor.execute('INSERT INTO card (card_number, name) VALUES (?, ?)', (card_number, name))
    conn.commit()
    print('添加成功')
    cursor.close()
    conn.close()

# 删除信用卡
def delete_card(card_number):
    conn, cursor = connect_db()
    cursor.execute('DELETE FROM card WHERE card_number = ?', (card_number,))
    conn.commit()
    print('删除成功')
    cursor.close()
    conn.close()

# 查询信用卡
def query_card(card_number):
    conn, cursor = connect_db()
    cursor.execute('SELECT * FROM card WHERE card_number = ?', (card_number,))
    result = cursor.fetchone()
    if result:
        print('信用卡卡号:', result[1])
        print('持卡人姓名:', result[2])
        print('信用卡余额:', result[3])
    else:
        print('未查询到此信用卡记录')
    cursor.close()
    conn.close()

# 修改信用卡余额
def update_balance(card_number, balance):
    conn, cursor = connect_db()
    cursor.execute('UPDATE card SET balance = ? WHERE card_number = ?', (balance, card_number))
    conn.commit()
    print('修改成功')
    cursor.close()
    conn.close()


以上代码块中,定义了四个函数分别为add_carddelete_cardquery_cardupdate_balance用来添加、删除、查询和修改信用卡的功能。connect_db函数用来连接数据库。

步骤3:编写程序入口

接下来写程序入口的代码块,用来调用各函数。

if __name__ == '__main__':
    while True:
        print('1. 添加信用卡')
        print('2. 删除信用卡')
        print('3. 查询信用卡')
        print('4. 修改信用卡余额')
        print('0. 退出程序')
        choice = input('请输入操作编号:')
        if choice == '1':
            card_number = input('请输入信用卡卡号:')
            name = input('请输入持卡人姓名:')
            add_card(card_number, name)
        elif choice == '2':
            card_number = input('请输入信用卡卡号:')
            delete_card(card_number)
        elif choice == '3':
            card_number = input('请输入信用卡卡号:')
            query_card(card_number)
        elif choice == '4':
            card_number = input('请输入信用卡卡号:')
            balance = float(input('请输入信用卡余额:'))
            update_balance(card_number, balance)
        elif choice == '0':
            break
        else:
            print('输入错误,请重新输入')

以上代码块中,用if...elif...else语句来判断用户的输入,调用相应的函数来实现对数据库的操作。

以下是示例:

1. 添加信用卡
2. 删除信用卡
3. 查询信用卡
4. 修改信用卡余额
0. 退出程序
请输入操作编号:1
请输入信用卡卡号:1234567890
请输入持卡人姓名:张三
添加成功
请输入操作编号:3
请输入信用卡卡号:1234567890
信用卡卡号: 1234567890
持卡人姓名: 张三
信用卡余额: 0.0
请输入操作编号:2
请输入信用卡卡号:1234567890
删除成功
请输入操作编号:0
1. 添加信用卡
2. 删除信用卡
3. 查询信用卡
4. 修改信用卡余额
0. 退出程序
请输入操作编号:4
请输入信用卡卡号:1234567890
请输入信用卡余额:5000
修改成功
请输入操作编号:3
请输入信用卡卡号:1234567890
信用卡卡号: 1234567890
持卡人姓名: 张三
信用卡余额: 5000.0
请输入操作编号:0

以上是使用Python3编写简单信用卡管理程序的完整攻略,包含了创建数据库、编写函数和程序入口的步骤,并提供了两个基本示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Python3 编写简单信用卡管理程序 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • python操作文件的参数整理

    让我详细讲解一下“Python操作文件的参数整理”的完整攻略。 1. 打开文件 要操作文件,首先要打开它。使用Python的open()函数可以打开文件,参数有两个: 文件路径 打开模式 文件路径可以是本地文件路径或者是远程路径。打开模式有几个选项: r只读模式(默认) w写入模式,会覆盖已有的文件内容 a追加模式,不会覆盖已有的文件内容 在使用open()…

    python 2023年6月5日
    00
  • 在Python中使用NumPy将一个赫米特数列添加到另一个数列上

    当我们需要在Python中进行线性代数计算时,NumPy是一个非常重要的库。本攻略将讲解如何使用NumPy将一个赫米特数列添加到另一个数列上。 步骤1 – 导入NumPy库 在首先我们需要导入NumPy库。在Python中,我们可以使用以下语句导入NumPy: import numpy as np 在这个示例中,我们使用“np”作为NumPy库的别名。这使得…

    python-answer 2023年3月25日
    00
  • Python数据结构队列解决约瑟夫斯问题

    标题:Python数据结构队列解决约瑟夫斯问题 约瑟夫斯问题简介 约瑟夫斯问题是一个经典的问题,即有n个人围成一圈,从编号为k的人开始报数,报到m的那个人出列,然后从出列的下一个人开始重新报数,直到剩下最后一个人,问这个人的编号是多少。 解题思路 题目中涉及到循环报数,因此可以利用队列数据结构来解决。 步骤如下:1. 初始化一个队列,用于存储所有人的编号。2…

    python 2023年6月5日
    00
  • 使用IPython或Spyder将省略号表示的内容完整输出

    使用IPython或Spyder将省略号表示的内容完整输出,可以使用以下两种方法。 方法一:使用 pandas 设置控制台输出的最大列宽和最大行数 在 IPython 或 Spyder 中使用 pandas 库操作数据时,输出结果默认会对列宽和行数进行限制,数据量大时可能会显示省略号。可以通过以下代码设置最大列宽和最大行数来完整输出数据。 import pa…

    python 2023年6月5日
    00
  • python 随时间序列变动画图的方法

    首先,我们需要准备好数据,将其存储为 Pandas DataFrame 格式。 可以看下面的示例: import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib.animation as animation # 生成随机数据 np.random…

    python 2023年5月18日
    00
  • 提取json字段并使用python将它们写入csv

    【问题标题】:Extract json fields and write them into a csv with python提取json字段并使用python将它们写入csv 【发布时间】:2023-04-07 23:05:01 【问题描述】: 我有一个包含多个字段的非常大的 json,我想只提取其中一些,然后将它们写入 csv。 这是我的代码: #!/…

    Python开发 2023年4月8日
    00
  • python如何快速生成时间戳

    想要快速生成时间戳,我们可以使用 Python 中的 time 模块和 datetime 模块。下面是具体步骤: 1. 导入模块 import time import datetime 2. 使用 time 模块生成时间戳 使用 time 模块中的 time() 函数可以获取当前时间的时间戳。时间戳是一个浮点数,表示自 Epoch(1970 年 1 月 1 …

    python 2023年6月2日
    00
  • Python将多个excel表格合并为一个表格

    下面我将详细讲解Python将多个excel表格合并为一个表格的完整实例教程。 前置条件 在开始之前,请确保你已经安装了以下库: pandas openpyxl 你可以通过pip命令进行安装: pip install pandas pip install openpyxl 实现步骤 第一步:导入所需库 在Pyhton文件中,首先需要导入所需的库。本次需要使用…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部