Python实现自动添加脚本头信息的示例代码


Posted in Python onSeptember 02, 2016

前言

每个人写脚本时的格式都会有所不同,有的会注明脚本本身的一些信息,有的则开门见山,这在小团队里其实没什么,基本别人做什么你也都知道,但如果放到大的团队就比较麻烦了,因为随着人数的增多,脚本成指数增长,如果每个人风格不统一,到最后就会造成非常大的弊端,所以当团队人数增长后,就必须有一套标准,形成大家统一的编码规则,这样即使不看脚本具体实现,也知道这个脚本的功能是什么。

我们今天分享的一段脚本是自动添加注释信息的脚本,添加的信息包括脚本名称、作者、时间、描述、脚本用法、语言版本、备注等,下面来看示例代码

#!/usr/bin/env python
 
 
from os.path import exists
from time import strftime
import os
 
title = raw_input("Enter a title for your script: ")
 
title = title + '.py'
 
title = title.lower()
 
title = title.replace(' ', '_')
 
if exists(title):
  print "\nA script with this name already exists."
  exit(1)
 
descrpt = raw_input("Enter a description: ")
name = raw_input("Enter your name: ")
ver = raw_input("Enter the version number: ")
div = '======================================='
 
filename = open(title, 'w')
 
date = strftime("%Y%m%d")
 
filename.write('#!/usr/bin/python')
filename.write('\n#title\t\t\t:' + title)
filename.write('\n#description\t\t:' + descrpt)
filename.write('\n#author\t\t\t:' + name)
filename.write('\n#date\t\t\t:' + date)
filename.write('\n#version\t\t:' + ver)
filename.write('\n#usage\t\t\t:' + 'python ' + title)
filename.write('\n#notes\t\t\t:')
filename.write('\n#python_version\t\t:2.6.6')
filename.write('\n#' + div * 2 + '\n')
filename.write('\n')
filename.write('\n')
 
filename.close()
 
os.system("clear") 
 
os.system("vim +12 " + title)
exit()

脚本不做过多解释了,基本就是获取信息,然后写入一个文件中,其它不废话了,这个脚本足够简单了,我们最后来看看生成的结果:

#!/usr/bin/python
#title         :test4.py
#description      :I am test script
#author         :python技术
#date          :20160902
#version        :0.1
#usage         :python test4.py
#notes         :
#python_version     :2.6.6
#==============================================================================

总结

大家想一下,如果每个脚本前面都有这些基本信息,是不是看起来会清晰很多,最后希望这个脚本给给大家带来些帮助,当然如果有任何问题可以留言交流。谢谢大家对三水点靠木的支持。

Python 相关文章推荐
关于Python 3中print函数的换行详解
Aug 08 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
Feb 11 Python
浅谈Python反射 & 单例模式
Mar 21 Python
详解pandas删除缺失数据(pd.dropna()方法)
Jun 25 Python
Python3安装psycopy2以及遇到问题解决方法
Jul 03 Python
关于python字符串方法分类详解
Aug 20 Python
python3使用GUI统计代码量
Sep 18 Python
Python关于__name__属性的含义和作用详解
Feb 19 Python
Pandas时间序列基础详解(转换,索引,切片)
Feb 26 Python
如何用Python绘制3D柱形图
Sep 16 Python
详解vscode实现远程linux服务器上Python开发
Nov 10 Python
Pyqt助手安装PyQt5帮助文档过程图解
Nov 20 Python
利用Python获取操作系统信息实例
Sep 02 #Python
好用的Python编辑器WingIDE的使用经验总结
Aug 31 #Python
Linux下为不同版本python安装第三方库
Aug 31 #Python
Python中的左斜杠、右斜杠(正斜杠和反斜杠)
Aug 30 #Python
分享Python开发中要注意的十个小贴士
Aug 30 #Python
Python将图片批量从png格式转换至WebP格式
Aug 22 #Python
利用Python批量生成任意尺寸的图片
Aug 29 #Python
You might like
PHP安全编程之加密功能
2006/10/09 PHP
PHP取整数函数常用的四种方法小结
2012/07/05 PHP
php链表用法实例分析
2015/07/09 PHP
PHP加密3DES报错 Call to undefined function: mcrypt_module_open() 如何解决
2016/04/17 PHP
PHP遍历目录文件的常用方法小结
2017/02/03 PHP
php array_reverse 以相反的顺序返回数组实例代码
2017/04/11 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
PHP使用Redis实现Session共享的实现示例
2019/05/12 PHP
js字符编码函数区别分析
2008/06/05 Javascript
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
全面理解面向对象的 JavaScript(来自ibm)
2013/11/10 Javascript
js给onclick赋值传参数的两种方法
2013/11/25 Javascript
JS批量修改PS中图层名称的方法
2014/01/26 Javascript
javascript引用类型指针的工作方式
2015/04/13 Javascript
javascript中setInterval的用法
2015/07/19 Javascript
JavaScript获取对象在页面中位置坐标的方法
2016/02/03 Javascript
老生常谈Javascript中的原型和this指针
2016/10/09 Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
2017/03/05 Javascript
Angular中的$watch方法详解
2017/09/18 Javascript
JavaScript中的高级函数
2018/01/04 Javascript
vue-cli项目使用mock数据的方法(借助express)
2019/04/15 Javascript
js实现图片上传到服务器和回显
2020/01/19 Javascript
Js实现复选框的全选、全不选反选功能代码实例
2020/02/28 Javascript
在Webpack中用url-loader处理图片和字体的问题
2020/04/28 Javascript
详解Django框架中用户的登录和退出的实现
2015/07/23 Python
Python 备份程序代码实现
2017/03/06 Python
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
Python OpenCV获取视频的方法
2018/02/28 Python
pandas中read_csv的缺失值处理方式
2019/12/19 Python
在Django中预防CSRF攻击的操作
2020/03/13 Python
CSS3实现3D翻书效果
2016/06/20 HTML / CSS
VELTRA台湾:世界自由行专家
2017/08/15 全球购物
Funko官方商店:源自美国,畅销全球搪胶收藏玩偶
2018/09/15 全球购物
停电放假通知
2015/04/14 职场文书
如何有效防止sql注入的方法
2021/05/25 SQL Server
Python激活Anaconda环境变量的详细步骤
2021/06/08 Python