'''
@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. 最详细Python批量字典暴力破解zip密码

    工具破解 前两天在网上下来了一波项目案例,结果全是加密的压缩包,于是去网上找了一个压缩包破解的工具 苦于工具破解太慢,一个压缩包要好久,解压了三个之后就放弃了,准备另寻他法 密码字典 巧的是破解的三个 ...

  2. 《深入理解计算机系统》实验三 —— Buf Lab

    这是CSAPP的第三个实验,主要让我们熟悉GDB的使用,理解程序栈帧的结构和缓冲区溢出的原理. 实验目的   本实验的目的在于加深对IA-32函数调用规则和栈结构的具体理解.实验的主要内容是对一个可执 ...

  3. xwiki升级8.8.4

    安装包下载: http://download.forge.ow2.org/xwiki/xwiki-enterprise-jetty-hsqldb-8.4.4.zip 推荐使用jetty包,方便快捷,不 ...

  4. 第一篇:docker 简单入门(一)

    本篇目录 写在最前面的话 docker概念介绍 镜像的概念.容器的概念 docker的安装介绍 写在最前面的话 由于此类文章博客园鉴定为简单文章,所以已经移到csdn[https://blog.csd ...

  5. windows 上的MySQL默认字符集设置踩过的坑

    前言: 前几天刚买了新电脑,装上MySQL有几天了,今天没事试了一下,发现默认字符集没有修改,还是默认的latin1,折腾了大半天,终于搞好了. 这是我成功设置后的结果图: 命令式直接在MySQL界面 ...

  6. python 连接数据库操作

    import mysql #打开数据库连接(用户名,密码,数据库名) db = mysql.connect("localhost","testuser",&qu ...

  7. gcc编译阶段打印宏定义的内容

    背景 总所周知,代码量稍微大一点的C/C++项目的一些宏定义都会比较复杂,有时候会嵌套多个#if/#else判断分支和一堆#ifdef/#undef让你单看代码的话很难判断出宏定义的具体内容. 如果有 ...

  8. 面试官: ShardingSphere 学一下吧

    文章目录 目录 一.ShardingSphere简介 二.Sharding-JDBC 2.1 Sharding-JDBC实现水平分表 2.2 Sharding-JDBC实现水平分库 2.3 Shard ...

  9. Containerd 的前世今生和保姆级入门教程

    原文链接:https://fuckcloudnative.io/posts/getting-started-with-containerd/ 1. Containerd 的前世今生 很久以前,Dock ...

  10. Kubernetes学习笔记_尚硅谷

    https://www.bilibili.com/video/BV1w4411y7Go?p=1 一.K8s介绍 k8s是一个编排容器的工具,其实也是管理应用的全生命周期的一个工具,从创建应用,应用的部 ...