栈的实现
入栈
出栈
查看栈顶元素
栈的长度
栈是否为空
stack=[]
print(‘栈操作目录’.center(50,’*’))
print("""
1.入栈
2.出栈
3.查看栈顶元素
4.栈的长度
5.栈是否为空
6.退出
“”")
while True:
choice = input(‘请输入选择:’)
##1.入栈
if choice == ‘1’:
a = input(‘输入添加的元素:’)
stack.append(a)
print(‘元素%s添加成功’ %a)
##2.出栈
elif choice == ‘2’:
#先判断栈是否为空
if not stack:
print(‘栈为空,不能出栈’)
else:
a=stack.pop()
print(’%s元素出栈成功’ %a)
##3.查看栈顶元素
elif choice == ‘3’:
if len(stack) == 0:
print(‘栈为空’)
else:
print(‘栈顶元素为%s’ %(stack[-1]))
##4.查看栈的长度
elif choice == ‘4’:
print(‘栈的长度为%s’ %(len(stack)))
##5.栈是否为空
elif choice == ‘5’:
if len(stack) == 0:
print(‘栈为空’)
else:
print(‘栈不为空’)
elif choice == ‘q’:
print(‘退出’)
break
else:
print(‘请输入正确的选择’)
. 随机生成100个卡号;
卡号以6102009开头, 后面3位依次是 (001, 002, 003, 100),
2. 生成关于银行卡号的字典, 默认每个卡号的初始密码为"redhat";
- 输出卡号和密码信息, 格式如下:
卡号 密码
6102009001 000000
#定义列表用于存储卡号
s = []
#for循环生成连续100个卡号,存储在列表中
for i in range(100):
s1 = ‘6101009%.3d’ %(i+1)
s.append(s1)
#使用fromkeys函数创建并返回一个新字典,s为key,value值设为redhat
s2={}.fromkeys(s,‘redhat’)
print(‘银行卡号:\t\t\t密码:’)
#使用for循环输出卡号及密码
for key, value, in s2.items():
print(’%s\t\t\t%s’ % (key, value))