纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Python中的栈 Python中栈的仔细讲解

李和龙   2021-11-18 我要评论
想了解Python中栈的仔细讲解的相关内容吗李和龙在本文为您仔细讲解Python中的栈的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Python中的栈,栈的介绍,Python栈下面大家一起来学习吧

本文转自公众号:"算法与编程之美"

1、问题描述

Python中数据类型有列表元组字典队列栈树等等像列表元组这样的都是python内置数据结构栈队列这些都是需要我们自己去定义的

栈是一种只允许在一端插入和取出的数据结构这一端通常被叫做栈顶另一端叫栈底没有数据的叫空栈这种数据类型由于是我们自己进行定义所以有很多功能都需要自己写出相应函数来实现所以我们看看这里的功能

2、解决方案

栈的基本操作大概有:生成栈入栈出栈返回栈顶元素判断是否为空栈返回栈内元素个数

首先我们先要创建一个栈:

class stack(object):

    def  __init__(self):

         self.__list =  []

这里创建出来就是一个空栈想要检测的话我们也可以通过一个函数来检测是否为空栈:

def is_empty(self):

    return  self.__list == []

    #  return not self.__list

这是两种return的检测方式任选其一都能够完成
接下来创建了栈也知道了检测栈是否为空如定义所说因为栈是我们自己定义的一种数据结构且满足一个后进先出的规则那么元素的保存和取出也自然不同我们叫做入栈和出栈首先是入栈我么仅需要定义一个push函数:

def push(self,item):

     self.__list.append(item)

然后定义一个函数pop来进行出栈:

def pop(self):

     self.__list.pop()

peek函数进行返回栈顶元素操作:

def peek(self):

    if  self.__list:

         return self.__list[-1]

    else:

         return None

size函数进行返回栈的元素个数的操作:

def size(self):

    return  len(self.__list)

3、结语

以上便是栈这种数据结构的大概用法通过定义各种函数然后在使用时直接调用这样也显得非常的方便

定义栈的函数时特别要注意的是里面关键词的使用例如__list,__init__中的下划线的使用这些都是系统内定的不能轻易改变不然很容易让系统报错


相关文章

猜您喜欢

  • Docker制作镜像 Docker制作镜像的完整过程

    想了解Docker制作镜像的完整过程的相关内容吗水妖3在本文为您仔细讲解Docker制作镜像的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Docker制作镜像,Docker,镜像制作下面大家一起来学习吧..
  • Java 插入排序 Java 十大排序算法之插入排序刨析

    想了解Java 十大排序算法之插入排序刨析的相关内容吗龍弟-idea在本文为您仔细讲解Java 插入排序的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Java,插入排序,Java,排序算法下面大家一起来学习吧..

网友评论

Copyright 2020 www.fresh-weather.com 【世纪下载站】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式