• 模块化编程


    #用"from ... import *"来执行代码模块中的函数,就不需要提到模块名,而且可以使用模块中定义的变量
    #如果你需要使用完全限定名(FQN)来用模块名限定函数名(这也是Python里推荐的做法),可以用"import..."
    from transaction_module import *
    #import transaction_module
    #items = ["DONUT","LATTE","FILTER","MUFFIN"]
    #prices = [1.50,2.0,1.80,1.20]
    running = True
    
    while running:
        option = 1
        for choice in items:
            print(str(option)+"."+choice)
            option = option + 1
        print(str(option)+".Quit")
        
        choice = int(input("your choice is:"))
        if choice == option:
            running = False
        else:
            credit_card = int(input("your credit card is:"))
            save_transaction(prices[choice-1]*100,credit_card,items[choice-1])
            print("Yes")
    #模块文件
    #transaction_module.py
    
    #import re
    def save_transaction(price,credit_card,item):
        file = open("transaction.txt","a")
        file.write("%16s%07d %16s
    "%(credit_card,price,item))
        file.close()
    
    def pare_sale_info():
        file = open("sale_info.txt")
        a = []
        for each_line in file:
            (card_num,item_num) = each_line.split(" ")
            a.append([int(card_num),int(item_num)])
        return(a)
    
    items
    = ["DONUT","LATTE","FILTER","MUFFIN"] prices = [1.50,2.0,1.80,1.20] #后面仅做模块调试使用 sale_info = pare_sale_info() i = 0 for each_info in sale_info: save_transaction(prices[each_info[1]-1]*100,each_info[0],items[each_info[1]-1]) #print(item)

    操作相关的文件:

    #sale_info.txt
    
    6382746238764830     1
    6382746238764840     2
    6382746238764850     3
    6382746238764860     4
    6382746238764870     1
    6382746238764880     2
    6382746238764890     3
    6382746238764900     4
    6382746238764910     1
    6382746238764920     2
    6382746238764930     3
    6382746238764940     4
    6382746238764950     1
    6382746238764960     2
    6382746238764970     3
    #transaction.txt
    
    63827462387648300000150            DONUT
    63827462387648400000200            LATTE
    63827462387648500000180           FILTER
    63827462387648600000120           MUFFIN
    63827462387648700000150            DONUT
    63827462387648800000200            LATTE
    63827462387648900000180           FILTER
    63827462387649000000120           MUFFIN
    63827462387649100000150            DONUT
    63827462387649200000200            LATTE
    63827462387649300000180           FILTER
    63827462387649400000120           MUFFIN
    63827462387649500000150            DONUT
    63827462387649600000200            LATTE
    63827462387649700000180           FILTER
    63827462387648300000150            DONUT
    63827462387648400000200            LATTE
    63827462387648500000180           FILTER
    63827462387648600000120           MUFFIN
  • 相关阅读:
    转义将正文中换行符
    THINKPHP短链接设置方法(路由设置)
    MEMCACHE分布式算法(PHP)
    win7下memCache安装过程
    JQUERY根据值将input控件选中!
    Thinkphp CURD中的where方法
    SQL语法LPAD和RPAD
    Linux查看docker容器日志
    Linux中清空docker容器日志
    错误记录——fail: Microsoft.AspNetCore.Server.Kestrel[13]
  • 原文地址:https://www.cnblogs.com/liuyang92/p/7401488.html
Copyright © 2020-2023  润新知