python栈支持的操作示例

这篇文章将为大家详细讲解有关python栈支持的操作示例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

10余年的仲巴网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整仲巴建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“仲巴网站设计”,“仲巴网站推广”以来,每个客户项目都认真落实执行。

python的数据类型有哪些?

python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(浮点型)。2.字符串,分别是str类型和unicode类型。3.布尔型,Python布尔类型也是用于逻辑运算,有两个值:True(真)和False(假)。4.列表,列表是Python中使用最频繁的数据类型,集合中可以放任何数据类型。5. 元组,元组用”()”标识,内部元素用逗号隔开。6. 字典,字典是一种键值对的集合。7. 集合,集合是一个无序的、不重复的数据组合。

1、说明

Stack()创建一个空栈。不需要参数,会回到空栈;

s.isEmpty()检查栈是否为空,无需参数,并返回布尔值;

s.push(item)添加一个元素。它需要一个参数item,没有返回值;

s.peek()返回栈顶部的元素,但不能移除。无需参数或修改栈内容;

s.size()返回栈中元素的数量。无需参数,可返回整数;

s.pop():移除栈顶部的元素。不需要参数,但会返回顶部元素,修改栈的内容;

2、实例

class Stack():
    """
    栈方式1:假设列表的尾部是栈的顶端。当栈增长时(即进行push操作), 新的元素会被添加到列表的尾部。pop操作同样会修改这一端。
    将允许进行插入、删除的一端称为栈顶,另一端称为栈底。
    """
 
    # 创建一个空栈
    def __init__(self):
        self.__list = []
 
    # 检查栈是否为空:判断是否等于一个空列表
    def isEmpty(self):
        return self.__list == []
        # return not self.__list
 
    # 统计栈的长度
    def size(self):
        return len(self.__list)
 
    # 返回栈顶元素
    def peek(self):
        # return self.__list[len(self.__list)-1]
        if self.__list:
            return self.__list[-1]
        else:
            return None
 
    # 入栈(把列表尾部假设为栈顶)
    def push(self, item):
        self.__list.append(item)
 
    # 出栈
    def pop(self):
        return self.__list.pop()
 
 
class Stack2:
    """
    栈方式2:选择将列表头部作为顶端,必须用pop方法和insert方法显式地访问下标为0的元素,即列表中的第一个元素;
    """
 
    def __init__(self):
        self.__list = []
 
    def isEmpty(self):
        """判断栈是否为空"""
        # return self.__list == []
        return not self.__list
 
    def size(self):
        """返回栈的元素个数"""
        return len(self.__list)
 
    # 入栈
    def push(self, item):
        """添加一个新的元素item到栈顶"""
        self.__list.insert(0, item)
 
    # 出栈
    def pop(self):
        return self.__list.pop(0)
 
    def peek(self):
        """返回栈顶元素"""
        if self.__list:
            return self.__list[0]
        else:
            return None
 
 
if __name__ == '__main__':
    s = Stack2()
    print(s.isEmpty())
    s.push('a')
    s.push('b')
    s.push('小明')
    s.push('c')
    print(s.size())
 
    print(s.pop())
    print(s.pop())
    print(s.pop())
    print(s.pop())

关于“python栈支持的操作示例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


新闻名称:python栈支持的操作示例
分享URL:http://azwzsj.com/article/podppd.html