python设计学生成绩管理系统详细步骤_python实现一个简易版学生成绩管理系统

这个博客介绍了如何使用Python创建一个学生成绩管理系统,包括单链表的实现,以及添加、删除、修改、查找、排序等操作。系统还包含了菜单驱动的用户交互功能,并能将数据保存到文件。
摘要由CSDN通过智能技术生成

class Node(object):

def __init__(self, data, pointer):

self.data = data

self.next = pointer

# 创建单链表

class SingleLinkedList(object):

def __init__(self):

self.head = Node(None, None)

self.point = self.head

def append(self, data):

# 末尾追加节点

new_node = Node(data, None)

self.point.next = new_node

self.point = new_node

def insert(self, data, find):

# 插入数据(前向插入数据)

if not self.head.next:

print('链表为空')

return None

new_node = Node(data, None)

self.point = self.head

while self.point.next.data != find:

self.point = self.point.next

if self.point.next is None:

print('没有找到该元素')

return None

new_node.next = self.point.next

self.point.next = new_node

def delete(self, find):

# 删除节点

# 空链表

if not self.head.next:

print('链表为空')

return None

self.point = self.head

while self.point.next.data != find:

self.point = self.point.next

pointer = self.point.next

self.point.next = self.point.next.next

del pointer

def insert_after_head(self, data):

node = Node(data, None)

# bug 产生没写 if 返回

if not self.head.next:

self.head.next = node

return None

node.next = self.head.next

self.head.next = node

def reverse(self):

local_list = SingleLinkedList()

self.point = self.head

count = 0

while self.point.next:

count += 1

self.point = self.point.next

data = self.point.data

local_list.insert_after_head(data)

return local_list

def get_size(self):

count = 0

self.point = self.head

while self.point.next:

self.point = self.point.next

count += 1

retur

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值