'''
@author: 人人都爱小雀斑
@time: 2020/3/11 8:46
@desc:
顺序表的相关操作
'''
class SequenceList:
def __init__(self):#初始化线性表
self.L=[]
def CreateSequenceList(self):#创建顺序表
print("*"*30+"\n*请输入数据后按回车键确认,若想结束输入请按“#”\n"+"*"*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、获取顺序表中指定位置的元素值\n"
"2、在顺序表中查找某一指定元素\n"
"3、在顺序表中指定位置插入某一元素\n"
"4、在顺序表末尾插入某一元素\n"
"5、对顺序表进行排序\n"
"6、删除顺序表中某一元素\n"
"7、访问顺序表中某一位置的元素\n"
"8、遍历顺序表中所有元素\n")
while True:
num=eval(input("\n请输入要执行的操作的序号:"))
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])

python学习笔记 | 顺序表的常规操作的更多相关文章

  1. C语言学习笔记-顺序表

    #include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include "coni ...

  2. python学习笔记(二)文件操作和集合

    集合: 集合也是一种数据类型,一个类似列表东西,它的特点是无序的,不重复的,也就是说集合中是没有重复的数据 集合的作用: 1.它可以把一个列表中重复的数据去掉,而不需要你再写判断 2.可以做关系测试, ...

  3. python学习笔记(十):操作excel

    一.python操作excel,python操作excel使用xlrd.xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的 ...

  4. Python学习笔记-Day2-Python基础之字符串操作

    字符串的常用操作包括但不限于以下操作: 字符串的替换.删除.截取.复制.连接.比较.查找.分割等 这里将对字符串的内置操作方法进行总结归纳,重点是以示例的方式进行展示. 使用type获取创建对象的类 ...

  5. Python学习笔记3-文件的简单操作

    Python中的文件操作 Python中文件打操作离不开两个模块  os 和 shutil os:操作文件.目录: Python os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话, ...

  6. python学习笔记3-列表

    # 1.列表长度可变,内容可修改 a = [0,1,2,3] a[0] = 'a0' a # ['a0', 1, 2, 3] # 2.添加元素 # 2.1列表末尾添加元素 a.append(4) a ...

  7. python学习笔记——(三)文件操作

    ·集合操作及其相应的操作符表示集合中没有插入,只有添加,因为毕竟无序 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Vergil Zhan ...

  8. python学习笔记02--列表和元组

    一.简介 数据结构是通过某种方式组织在一起的数据元素的集合. 序列是python中最基本的数据结构,python中包含6种内建的序列,分别是列表.元组.字符串.Unicode字符串.buffer对象和 ...

  9. Python学习笔记 -- 第六章 文件操作

    I/O编程 在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这 ...

随机推荐

  1. Centos7下使用mail发送邮件

    首先检测相关服务是否已安装[root@ProxyServer ~]# rpm -qa|grep mail libreport-plugin-mailx-2.0.9-19.el6.x86_64 mail ...

  2. Python 学习笔记 之 03 - 函数总结

    函数总结    最基本的一种代码抽象的方式.    定义函数    使用def语句进行定义, return进行函数返回.    一旦执行导return,函数就执行完毕.    即使函数未指定retur ...

  3. 使用VNC远程linux机器

    一,在Windows机器上下载vnc客户端 vnc viewer是一款vnc远程客户端,可以很方便的从Windows机器远程安装了图形界面和vnc服务器的linux机器. 从官网下载https://w ...

  4. Flink Checkpoint 参数详解

    Flink Checkpoint 参数详解 什么是 checkpoint 保存状态 Checkpoint 参数详解 StreamExecutionEnvironment env = StreamExe ...

  5. Java可视化窗体

    加粗样式>Swing程序表示Java的客户端窗体程序,除了通过手动编写代码的方式设计Swing程序之外,Eclipse中还提供了一种WindowBuilder工具,该工具是一种非常好用的Swin ...

  6. Spring Cloud 入门教程(一): Eureka 服务注册

    创建一个Maven工程,New-Other-Maven-Maven Probject 点击Next,红色框里的选上 点击Next 点击Finsh就完成了一个Maven Probject的创建. (1) ...

  7. 中小学生的噩梦:怎样用Python检测抄袭行为?广大中小学生们的美梦就此结束

    本教程将介绍如何使用机器学习技术(如word2vec和余弦相似度等),在Python中用几行代码制作抄袭检测器.搭建完成后,抄袭检测器将会从文件中载入学生们的作业,然后通过计算相似度来判断学生有无相互 ...

  8. IIS重写2.0 IIS伪静态 下载地址

    IIS重写2.0 IIS伪静态 下载地址 https://www.iis.net/downloads/microsoft/url-rewrite#additionalDownloads Downloa ...

  9. 利用 Watermill 实现 Golang CQRS

    CQRS CQRS 的意思是"命令-查询责任隔离".我们分离了命令(写请求)和查询(读请求)之间的责任.写请求和读请求由不同的对象处理. 就是这样.我们可以进一步分割数据存储,使用 ...

  10. java中自定义一个异常类 在某些情况抛出自定的异常 ----------阻断程序

    //=============定义异常类 package org.springblade.flow.engine.errorException; /** * 自定义异常处理写入sap失败 */ pub ...