可爱的PYTHON,更新到0.5版本代码

简介:

这书看得挺顺的。

按着思路学习软件开发的主流思想。。

cdctools.py

复制代码
# _*_ coding: utf-8 _*_
import os,sys



def cdWalker(CDROM, cdcfile):
    export = ""
    for root, dirs, files in os.walk(CDROM):
        export += formatCDinfo(root,dirs,files)
        open(cdcfile,'w').write(export)

def cdcGrep(cdcpath, keyword):
    filelist = os.listdir(cdcpath)
    for cdc in filelist:
        if ".cdc" in cdc:
            cdcfile = open(cdcpath + cdc)
            for line in cdcfile.readlines():
                if keyword in line:
                    print(line)
def formatCDinfo(root,dirs,files):
    export = "\n" + root + "\n"
    for d in dirs:
        export += "-d " + root + d + "\n"
    for f in files:
        export += "-f %s %s \n" %(root,f)
    export += "=" * 70

    return export

if __name__ == '__main__':
    CDROM = 'E:\\TDDOWNLOAD\\'
    cdWalker(CDROM,'cdc.cdc')
'''
if sys.argv[1] == '-e':
    cdWalker(CDROM, sys.argv[2])
    print("记录文件夹 %s 信息内容 到 %s" % (CDROM, sys.argv[2]))
else:
    print('PYCDC使用方式:
        python pycdc.py -e mycdc1-1.cdc
        将光盘内容记录到mycdc1-1.cdc
        ')
'''
复制代码

 

pycdc-v-0.5.py

复制代码
# _*_ coding: utf-8_*_
import sys, cmd
from cdctools import *

class PyCDC(cmd.Cmd):
    def __init__(self):
        cmd.Cmd.__init__(self)
        self.CDROM = 'E:\\TDDOWNLOAD\\'
        self.CDDIR = 'cdc\\'
        self.prompt = "(PyCDC)>"
        self.intro = '''PyCDC0.5使用说明:
        dir 目录名 #指定保存和搜索目录,默认是"cdc"
        walk 文件名 #指定光盘信息文件名,使用"*.cdc"
        find 关键词 #使用在保存和搜索目录中遍历所有的.cdc文件,输出含有关键词的行
        ?            #查询
        EOF         #退出系统,也可以使用Ctrl + D(Unix)|Ctrl + Z(Dos/Windows)
        '''
    def help_EOF(self):
        print("退出程序 Quits the program")
    def do_EOF(self, line):
        sys.exit()

    def help_walk(self):
        print("扫描光盘内容 walk cd and export into *.cdc")
    def do_walk(self, filename):
        if filename == "":filename = input("请输入CDC文件名: ")
        print("扫描光盘内容到: '%s'" % filename)
        cdWalker(self.CDROM,self.CDDIR + filename)

    def help_dir(self):
        print("请拽定保存/搜索目录")
    def do_dir(self, pathname):
        if pathname == "":pathname = input("请输入指定保存/搜索目录: ")
        self.CDDIR = pathname
        print("指定保存/搜索目录:'%s' ; 默认是: '%s'" % (pathname, self.CDDIR))

    def help_find(self):
        print("搜索关键词")
    def do_find(self, keyword):
        if keyword == "":keyword = input("请输入搜索关键字: ")
        print("搜索关键词:%s" % keyword)
        cdcGrep(os.getcwd() + "\\" + self.CDDIR, keyword)

if __name__ == '__main__':
    cdc = PyCDC()
    cdc.cmdloop()
复制代码

 

输出:

目录
相关文章
|
6月前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
312 26
|
5月前
|
测试技术 Python
Python装饰器:为你的代码施展“魔法”
Python装饰器:为你的代码施展“魔法”
334 100
|
5月前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
503 95
|
6月前
|
Python
Python的简洁之道:5个让代码更优雅的技巧
Python的简洁之道:5个让代码更优雅的技巧
332 104
|
6月前
|
开发者 Python
Python神技:用列表推导式让你的代码更优雅
Python神技:用列表推导式让你的代码更优雅
591 99
|
5月前
|
缓存 Python
Python装饰器:为你的代码施展“魔法
Python装饰器:为你的代码施展“魔法
285 88
|
5月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
1010 68
|
6月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
784 7
|
6月前
|
存储 大数据 Unix
Python生成器 vs 迭代器:从内存到代码的深度解析
在Python中,处理大数据或无限序列时,迭代器与生成器可避免内存溢出。迭代器通过`__iter__`和`__next__`手动实现,控制灵活;生成器用`yield`自动实现,代码简洁、内存高效。生成器适合大文件读取、惰性计算等场景,是性能优化的关键工具。
344 2
|
6月前
|
JSON 缓存 开发者
淘宝商品详情接口(item_get)企业级全解析:参数配置、签名机制与 Python 代码实战
本文详解淘宝开放平台taobao.item_get接口对接全流程,涵盖参数配置、MD5签名生成、Python企业级代码实现及高频问题排查,提供可落地的实战方案,助你高效稳定获取商品数据。