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实现的数据结构与算法之链表详解
Apr 22 Python
Python中字符串的修改及传参详解
Nov 30 Python
python3操作微信itchat实现发送图片
Feb 24 Python
python自动发邮件总结及实例说明【推荐】
May 31 Python
Pandas之MultiIndex对象的示例详解
Jun 25 Python
Python求两点之间的直线距离(2种实现方法)
Jul 07 Python
django rest framework serializers序列化实例
May 13 Python
python如何输出反斜杠
Jun 18 Python
Python 处理日期时间的Arrow库使用
Aug 18 Python
python opencv实现简易画图板
Aug 27 Python
pandas数值排序的实现实例
Jul 25 Python
PyTorch中permute的使用方法
Apr 26 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
pdo中使用参数化查询sql
2011/08/11 PHP
简单谈谈 php 文件锁
2017/02/19 PHP
php设计模式之装饰模式应用案例详解
2019/06/17 PHP
laradock环境docker-compose操作详解
2019/07/29 PHP
PHP常用函数之格式化时间操作示例
2019/10/21 PHP
40款非常有用的 jQuery 插件推荐(系列一)
2011/12/21 Javascript
jQuery中使用data()方法读取HTML5自定义属性data-*实例
2014/04/11 Javascript
Javascript中的异步编程规范Promises/A详细介绍
2014/06/06 Javascript
关于jQuery判断元素是否存在的问题示例探讨
2014/07/21 Javascript
jquery获取url参数及url加参数的方法
2015/10/26 Javascript
详解JavaScript的表达式与运算符
2015/11/30 Javascript
JS实现关闭当前页而不弹出提示框的方法
2016/06/22 Javascript
JS for...in 遍历语句用法实例分析
2016/08/24 Javascript
js实现文字选中分享功能
2017/01/25 Javascript
几行js代码实现自适应
2017/02/24 Javascript
vue刷新和tab切换实例
2018/02/11 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
Electron中实现大文件上传和断点续传功能
2018/10/28 Javascript
Net微信网页开发 使用微信JS-SDK获取当前地理位置过程详解
2019/08/26 Javascript
[46:00]Ti4 冒泡赛第二轮LGD vs C9 2
2014/07/14 DOTA
使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤
2018/12/17 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
python把1变成01的步骤总结
2019/02/27 Python
python assert的用处示例详解
2019/04/01 Python
Python列表倒序输出及其效率详解
2020/03/04 Python
python实现程序重启和系统重启方式
2020/04/16 Python
keras slice layer 层实现方式
2020/06/11 Python
Keras loss函数剖析
2020/07/06 Python
Python爬虫代理池搭建的方法步骤
2020/09/28 Python
斯洛伐克电子产品购物网站:DATART
2020/04/05 全球购物
瑞典最大的儿童用品网上商店:pinkorblue.se
2021/03/09 全球购物
宣传保护环境的公益广告词
2014/03/13 职场文书
生产文员岗位职责
2014/04/05 职场文书
学生逃课万能检讨书2000字
2015/02/17 职场文书
给女朋友的道歉短信
2015/05/12 职场文书
教师节感想
2015/08/11 职场文书