python創(chuàng)建模板文件及使用教程示例
寫(xiě)作思路
1、模板的定義
2、如何利用模板生成多個(gè)文件
在很多情況下,我們會(huì)創(chuàng)建出很多樣式相似甚至是相同的類文件,比如在Android文件創(chuàng)建的時(shí)候(由于Android Studio已經(jīng)被我刪除很久了,就沒(méi)法實(shí)體展示)、Visual Studio創(chuàng)建繼承自虛方法的時(shí)候,創(chuàng)建出來(lái)的文件都已經(jīng)自帶了一些基礎(chǔ)格式和基礎(chǔ)方法
基于上述需求,有了利用模板類創(chuàng)建文件的功能
1、模板的定義
""" create in ${now} @author ${author} """ import sys class ${ClassName}Class(object): def __init(self): pass def ${ClassName}GetData(self): pass def ${ClassName}SetData(self): pass def ${ClassName}Print(self, msg): print("${ClassName}", " print:", msg) """ you can modify template from BaseClassTemplate.tpl """
看到上面那些 ${now}、 ${author}、 ${ClassName} 了嗎!這些就是我們?cè)谀0逯幸娲膶?duì)象!
2、如何利用模板生成多個(gè)文件
import datetime from string import Template tplFilePath = r'F:\PythonXSLWorkSpace\TemplateGeneratePython\PythonTemplate\BaseClassTemplate.tpl' path = r'F:\PythonXSLWorkSpace\TemplateGeneratePython\GenerateFloder\\' ClassNameList = ["Game", "Music", "Live"] for className in ClassNameList: now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') filename = className + 'Class.py' author = '在逆境中蛻變' tplFile = open(tplFilePath) gFile = open(path + filename, "w") lines = [] tpl = Template(tplFile.read()) lines.append(tpl.substitute( author=author, now=now, ClassName=className)) gFile.writelines(lines) tplFile.close() gFile.close() print('%s文件創(chuàng)建完成' % filename)
原理簡(jiǎn)述:實(shí)際上就是一種字符串匹配以及字符串替代,你甚至可以自己寫(xiě)一個(gè)匹配方式,然后用str.replace('${author}',author)來(lái)替換模板中的內(nèi)容!
運(yùn)行結(jié)果
一開(kāi)始文件的狀態(tài)如下
運(yùn)行后的結(jié)果如下
然后再讓我們看看里面的生成結(jié)果吧~
是不是很棒~(yú)當(dāng)然了,你可以根據(jù)模板根據(jù)需求定義更復(fù)雜的東西
以上就是python創(chuàng)建模板文件及使用教程示例的詳細(xì)內(nèi)容,更多關(guān)于python模板文件創(chuàng)建使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
解決pandas read_csv 讀取中文列標(biāo)題文件報(bào)錯(cuò)的問(wèn)題
今天小編就為大家分享一篇解決pandas read_csv 讀取中文列標(biāo)題文件報(bào)錯(cuò)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06Python 進(jìn)程操作之進(jìn)程間通過(guò)隊(duì)列共享數(shù)據(jù),隊(duì)列Queue簡(jiǎn)單示例
這篇文章主要介紹了Python 進(jìn)程操作之進(jìn)程間通過(guò)隊(duì)列共享數(shù)據(jù),隊(duì)列Queue,結(jié)合實(shí)例形式分析了Python進(jìn)程數(shù)據(jù)共享、隊(duì)列數(shù)據(jù)處理相關(guān)操作技巧,需要的朋友可以參考下2019-10-10python爬蟲(chóng)爬取圖片的簡(jiǎn)單代碼
在本篇文章里小編給大家整理的是一篇關(guān)于python爬蟲(chóng)爬取圖片的簡(jiǎn)單代碼內(nèi)容,有興趣的朋友們可以測(cè)試下。2021-01-01