列表的LIFO与文件交互

礼拜的LIFO特性:

LIFO(Last In First Out)

其实就是堆栈功能,比如搭积木:

第一块在最下面,最后一块在最上面,拆的时候总是最后一块先拆,以此类推(stack)

代码实现:

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
import sys

LIFO = []

def view():
    print(LIFO)

def push(a):
    LIFO.append(a)
    view()

def pop():
    LIFO.pop()
    view()


def quit():
    sys.exit()

while True:
    choose = input("Please choose one button\n{push,pop,view,quit}\n>:")
    choose = choose.upper()
    if choose == "PUSH":
        val = input("Enter something\n>:")
        push(val)
    elif choose == "POP":
        pop()
    elif choose == "VIEW":
        view()
    else:
        quit()

 

允许用户创建文件与写入内容

代码:

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
'makefile.py -- create text file'

import os ; import sys
ls = os.linesep

#循环要求输入文件名

while True:
    fname = input("Enter a filename(fullname): ")
    if os.path.exists(fname):
        print("ERROR '%s' is already exists!" % fname)
    else:
        break

#获取文件内容
all = []

print("\n enter  lines('q' by itself to quit)")

while True:
    content = input('> ')
    if content.lower() == 'q':
        break
    else:
        all.append(content)

#写入文件

with open(fname, 'w') as fobj:
    fobj.writelines(['%s%s' % (x, ls) for x in all])

print:"Done"

 

转载于:https://www.cnblogs.com/alben-cisco/p/6959968.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值