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之PyUnit单元测试实例
Oct 11 Python
栈和队列数据结构的基本概念及其相关的Python实现
Aug 24 Python
Python简单实现子网掩码转换的方法
Apr 13 Python
Python中遍历字典过程中更改元素导致异常的解决方法
May 12 Python
基于Django框架利用Ajax实现点赞功能实例代码
Aug 19 Python
ubuntu 18.04搭建python环境(pycharm+anaconda)
Jun 14 Python
Linux下通过python获取本机ip方法示例
Sep 06 Python
关于numpy中eye和identity的区别详解
Nov 29 Python
Python制作简易版小工具之计算天数的实现思路
Feb 13 Python
tensorflow pb to tflite 精度下降详解
May 25 Python
Python 生成短8位唯一id实战教程
Jan 13 Python
如何用python写个模板引擎
Jan 14 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
全国FM电台频率大全 - 18 湖南省
2020/03/11 无线电
虫族 Zerg 魔法科技
2020/03/14 星际争霸
php环境套包 dedeampz 伪静态设置示例
2014/03/26 PHP
浅谈mysql_query()函数的返回值问题
2016/09/05 PHP
浅谈php处理后端&接口访问超时的解决方法
2016/10/29 PHP
基于jquery的图片的切换(以数字的形式)
2011/02/14 Javascript
js检测浏览器版本、核心、是否移动端示例
2014/04/24 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
Javascript中With语句用法实例
2015/05/14 Javascript
JQuery插入DOM节点的方法
2015/06/11 Javascript
简述JavaScript中正则表达式的使用方法
2015/06/15 Javascript
javascript中字体浮动效果的简单实例演示
2015/11/18 Javascript
JavaScript事件详细讲解
2016/06/27 Javascript
js拼接html字符串的注意事项
2016/10/13 Javascript
超简单的Vue.js环境搭建教程
2017/03/17 Javascript
ES6中Proxy代理用法实例浅析
2017/04/06 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
React Native之TextInput组件解析示例
2017/08/22 Javascript
vue.js input框之间赋值方法
2018/08/24 Javascript
谈谈为什么你的 JavaScript 代码如此冗长
2019/01/30 Javascript
React 组件渲染和更新的实现代码示例
2019/02/21 Javascript
微信小程序手动添加收货地址省市区联动
2020/05/18 Javascript
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
浅谈Python中列表生成式和生成器的区别
2015/08/03 Python
python与sqlite3实现解密chrome cookie实例代码
2018/01/20 Python
python OpenCV学习笔记之绘制直方图的方法
2018/02/08 Python
Linux CentOS Python开发环境搭建教程
2018/11/28 Python
Python如何实现转换URL详解
2019/07/02 Python
基于python图像处理API的使用示例
2020/04/03 Python
python实现飞船大战
2020/04/24 Python
PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
2020/06/02 Python
几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍
2021/03/17 Javascript
线程的基本概念、线程的基本状态以及状态之间的关系
2012/10/26 面试题
运动会广播稿200米
2014/01/27 职场文书
2015年秋季校长开学典礼致辞
2015/07/29 职场文书