''' @author: 人人都爱小雀斑 @time: 2020/3/11 8:46 @desc: 顺序表的相关操作 ''' class SequenceList: def __init__(self):#初始化线性表 self.L=[] def CreateSequenceList(self):#创建顺序表 print("*"*30+" *请输入数据后按回车键确认,若想结束输入请按“#” "+"*"*30) while True: e=input("请输入元素:") if e=="#":break self.L.append(int(e)) def GetElement(self):#获取表中指定位置的元素值 position=eval(input("请输入想要查找的元素值的位置:")) value=self.L[position] print("元素位置:{};元素值:{}".format(position,value)) def FindElement(self):#在表中查找某一指定元素 value = eval(input("请输入想要查找的元素:")) position=self.L.index(value) print("元素值:{};元素位置:{}".format(value,position)) def InsertElement(self):#在表中指定位置插入某一元素 position=eval(input("请输入待插入元素的位置:")) value=eval(input("请输入待插入元素的值:")) self.L.insert(position,value) print("插入元素后,当前顺序表为:",self.L) def AppendElement(self):#在表末尾插入某一元素 value=eval(input("请输入在末尾插入的元素的值:")) self.L.append(value) print("插入元素后,当前顺序表为:", self.L) def SortSequenceList(self):#对表进行排序 print("未排序的顺序表:",self.L) self.L.sort() print("排序后的循序表:",self.L) def DeleteElement(self):#删除表中某一元素 value=eval(input("请输入待删除的元素:")) self.L.remove(value) print("删除后的循序表:", self.L) def VisitElement(self):#访问表中某一位置的元素 positon=eval("请输入待访问的元素的位置") print("在顺序表中位置为{}的元素为:{}".format(positon,self.L[positon])) def TravelseElement(self):#遍历表中所有元素 for i in range(len(self.L)): print("第{}个元素的值为:{}".format(i,self.L[i])) billie=SequenceList() billie.CreateSequenceList() print("1、获取顺序表中指定位置的元素值 " "2、在顺序表中查找某一指定元素 " "3、在顺序表中指定位置插入某一元素 " "4、在顺序表末尾插入某一元素 " "5、对顺序表进行排序 " "6、删除顺序表中某一元素 " "7、访问顺序表中某一位置的元素 " "8、遍历顺序表中所有元素 ") while True: num=eval(input(" 请输入要执行的操作的序号:")) dic={1:"billie.GetElement()",2:"billie.FindElement()",3:"billie.InsertElement()",4:"billie.AppendElement()",5:"billie.SortSequenceList()",6:"billie.DeleteElement()",7:"billie.VisitElement()",8:"billie.TravelseElement()"} eval(dic[num])