Python之列表实现栈的工作功能

问题:

python中使用列表实现栈的功能

"""
栈的工作原理
  入栈
  出栈
  查看栈顶元素
  栈的长度
  栈是否为空
"""
stack = []
info = """
    栈操作
  1.入栈
  2.出栈
  3.栈顶元素
  4.栈的长度
  5.栈是否为空
  q.退出
"""
while True:
  print(info)
  choice = input('请输入选择:')
  if choice == '1':
    item = input('入栈元素:')
    stack.append(item)
    print('元素%s入栈成功' %item)
  elif choice == '2':
    #先判断栈是否为空
    if not stack:
      print('栈为空,不能出栈')
    else:
      item = stack.pop()
      print('%s元素出栈成功' %item)
  elif choice == '3':
    if len(stack) == 0:
      print('栈为空')
    else:
      print('栈顶元素为%s' %(stack[-1]))
  elif choice == '4':
    print('栈的长度为%s' %(len(stack)))
  elif choice == '5':
    if len(stack) == 0:
      print('栈为空')
    else:
      print('栈不为空')
  elif choice == 'q':
    print('退出')
    break
  else:
    print('请输入正确的选择')

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接

(0)

相关推荐

  • 使用Python向C语言的链接库传递数组、结构体、指针类型的数据

    使用python向C语言的链接库传递数组.结构体.指针类型的数据 由于最近的项目频繁使用python调用同事的C语言代码,在调用过程中踩了很多坑,一点一点写出来供大家参考,我们仍然是使用ctypes来调用C语言的代码库. 至于如何调用基础数据类型的数据,请大家参考我的另外一篇文章:Python使用ctypes调用C/C++的方法 1. 使用python给C语言函数传递数组类型的参数 想必很多时候,C语言会使用数组作为参数,在之前我们使用过ctypes的一些数据类型作为C语言参数类型,包括byte

  • Python中常用的内置方法

    1.最大值 max(3,4) ##运行结果为4 2.最小值 min(3,4) ##运行结果为3 3.求和 sum(range(1,101)) ##求1-100的和 使用过这个函数求1-100的偶数或者奇数的和更简单 sum(range(1,101,2)) ##1-100之间的奇数和 sum(range(2,101,2)) ##1-100之间的偶数和 4.枚举 返回索引值和对应的value值 for i,v in enumerate('hello'): print(i,v) 5.zip 可以使两个

  • Python使用ctypes调用C/C++的方法

    python使用ctypes调用C/C++ 1. ctpes介绍 ctypes is a foreign function library for Python. It provides C compatible data types, and allows calling functions in DLLs or shared libraries. It can be used to wrap these libraries in pure Python. 官方文档地址: https://do

  • Python实现程序判断季节的代码示例

    1.用户输入月份,判断这个月是哪个季节 month = int(input('Month:')) if month in [3,4,5]: print('春季') elif month in [6,7,8]: print('夏季') elif month in [9,10,11]: print('秋季') elif month in [12,1,2]: print('冬季') else: print('输入不合法') 2.假定有下面的列表: names = ['fentiao','fendai'

  • Python后台管理员管理前台会员信息的讲解

    问题: 1. 后台管理员只有一个用户: admin, 密码: admin 2. 当管理员登陆成功后, 可以管理前台会员信息. 3. 会员信息管理包含: 添加会员信息 删除会员信息 查看会员信息 退出 - 添加用户: 1). 判断用户是否存在? 2).  如果存在, 报错: 3).  如果不存在,添加用户名和密码分别到列表中; - 删除用户 1). 判断用户名是否存在 2). 如果存在,删除: 3). 如果不存在, 报错: print('管理员登录'.center(50,'*')) inuser

  • python 调用c语言函数的方法

    虽然python是万能的,但是对于某些特殊功能,需要c语言才能完成.这样,就需要用python来调用c的代码了 具体流程: c编写相关函数 ,编译成库 然后在python中加载这些库,指定调用函数. 这些函数可以char ,int, float, 还能返回指针. 以下示例: 通过python调用c函数,返回"hello,world 字符串" 新建c语言文件 hello.c touch hello.c #include <stdio.h> char *get_str() {

  • Python中的元组介绍

    1.元组的创建 元组(tuple):元组本身是不可变数据类型,没有增删改查 元组内可以存储任意数据类型 t = (1,2.3,True,'star') ##例如这里面有数字,波尔值,和字符 print(t) print(type(t)) 元组里面包含可变数据类型,可以间接修改元组的内容 t1 = ([1,2,3],4) ##里面含有一个数组,可以改变里面数组的值 t1[0].append(4) print(t1) 元组如果只有一个元素的时候,后面一定要加逗号,否则数据类型不确定 t2 = ('h

  • Python调用C语言的方法【基于ctypes模块】

    本文实例讲述了Python调用C语言的方法.分享给大家供大家参考,具体如下: Python中的ctypes模块可能是Python调用C方法中最简单的一种.ctypes模块提供了和C语言兼容的数据类型和函数来加载dll文件,因此在调用时不需对源文件做任何的修改.也正是如此奠定了这种方法的简单性. 示例如下 实现两数求和的C代码,保存为add.c //sample C file to add 2 numbers - int and floats #include <stdio.h> int add

  • Python判断变量名是否合法的方法示例

    问题: 变量名是否合法: 1.变量名可以由字母,数字或者下划线组成 2.变量名只能以字母或者下划线开头 s = 'hello@' 判断变量名的第一个元素是否为字母或者下划线 s[0] 如果第一个元素符合条件,判断除了第一个元素之外的其他元素s[1:] 思路: 1.变量名的第一个字符是否为字母或下划线 2.如果是,继续判断 --> 4 3.如果不是,报错 4.依次判断除了第一个字符之外的其他字符 5.判断是否为字母数字或者下划线 while True: s = input('变量名:') #定义退

  • Python使用while循环花式打印乘法表

    花式打印9*9乘法表 #第一个计数器 i = 1 while i < 10: #第二个计数器 j = 1 while j <= i: print('%d*%d=%d\t' %(j, i, i*j) , end=('')) j +=1 #换行 print('') i +=1 #输出换行 print('') i = 1 while i <= 9: k = 8 j = 1 while k >= i: print('\t\t', end=('')) k -= 1 while j <=

随机推荐