python文件和zip操作变得简单

flametree的Python项目详细描述


flametree是一个python库,它提供了处理文件和文件夹的简单语法 (没有os.path.joinos.listdir等),并且对不同的文件系统使用相同的方法。

编写一个flametree程序来读/写磁盘文件夹中的文件,您的代码也将 能够读取/写入ZIP存档和虚拟(内存)存档-这是特别 在Web服务器上很有用。

例如,下面是如何使用flametree读取文件texts/poems/the_raven.txt,全部替换 文本中出现“海鸥”所指的“乌鸦”一词,并将结果写入一个新的 同一文件夹中的文件the_seagull.txt

fromflametreeimportfile_treewithfile_tree("texts")asroot:poem_text=root.poems.the_raven_txt.read()new_text=poem_text.replace("raven","seagull")root.poems._file("the_seagull.txt").write(new_text)

即使在这个非常简单的用例中,语法也比os方式更清晰, 其内容如下:

importoswithopen(os.path.join("poems","the_raven.txt"),"r")asf:poem_text=f.read()new_text=poem_text.replace("raven","seagull")withopen(os.path.join("poems","the_seagull.txt"),"w")asf:content=f.write(new_text)

此外,相同的flametree代码也适用于zip归档文件中的文件:

withfile_tree("my_archive.zip")asroot:poem_text=root.poems.the_raven_txt.read()new_text=poem_text.replace("raven","seagull")root.poems._file("the_seagull.txt").write(new_text)

现在处于硬模式:假设您的服务器接收 包含poems/the_raven.txt的存档,并且必须返回一个新的zip 包含文件poems/the_seagull.txt。在这里,核心的语法 操作相同:

destination_zip=file_tree("@memory")# Create a new virtual zipwithfile_tree(the_raven_zip_data)asroot:poem_text=root.poems.the_raven_txt.read()new_text=poem_text.replace("raven","seagull")destination_zip._dir("poems")._file("the_seagull.txt").write(new_text)destination_zip_data=destination_zip._close()# Now send the data to the client

有关更多示例和功能,请参见下面的usage部分。

信息

pip安装:

pip install flametree

github页

https://github.com/Edinburgh-Genome-Foundry/Flametree

许可证:麻省理工学院,爱丁堡基因组铸造厂版权所有

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用双一元运算符vs函数<Double,Double>   由于存在巨大的休眠,超出了java GC开销限制   java更改Tomcat中Apache文件上载的临时目录   当PDF位于本地驱动器时,javascript无法在IE中显示PDF   java hibernate如何加载瞬态对象?   java如何判断包属于哪个模块?   创建Word文档时java文件已损坏   java如何将Eclipse中的每个开放项目导出为自己的JAR?   java将带有getter和setter的变量添加到现有类中   java高效地发送多封电子邮件   java读/写。具有特殊字符的txt文件   java如何在导出到jar时包含opencv本机库   java Xstream在未完成时停止写入文件   if语句Java:无法检查布尔值是否为null   文本Java:读取txt文件并将其保存在字符串数组中,但不带反斜杠(空格)?   java如何使用正则表达式替换字符串的一部分   通过Java远程运行Powershell脚本   filenames带有xml文件空指针异常的Java文件uri