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爬虫利用cookie实现模拟登陆实例详解
Jan 12 Python
python3+PyQt5重新实现自定义数据拖放处理
Apr 19 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
Jul 22 Python
Python笔记之facade模式
Nov 20 Python
python3 动态模块导入与全局变量使用实例
Dec 22 Python
Python实现银行账户资金交易管理系统
Jan 03 Python
Python单例模式的四种创建方式实例解析
Mar 04 Python
详解PyQt5中textBrowser显示print语句输出的简单方法
Aug 07 Python
Python用SSH连接到网络设备
Feb 18 Python
Python多个MP4合成视频的实现方法
Jul 16 Python
python lambda 表达式形式分析
Apr 03 Python
Python之matplotlib绘制饼图
Apr 13 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令牌 Token改进版
2008/07/18 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
php文件操作相关类实例
2015/06/18 PHP
YII2框架中excel表格导出的方法详解
2017/07/21 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
javascript里的条件判断
2007/02/27 Javascript
基于jquery的动态创建表格的插件
2011/04/05 Javascript
解析使用JS 清空File控件的路径值
2013/07/08 Javascript
jquery插件orbit.js实现图片折叠轮换特效
2015/04/14 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
AngularJS入门之动画
2016/07/27 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
iview通过Dropdown(下拉菜单)实现的右键菜单
2018/10/26 Javascript
使用Angular自定义字段校验指令的方法示例
2019/02/01 Javascript
js核心基础之构造函数constructor用法实例分析
2019/05/11 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
[34:44]Liquid vs TNC Supermajor 胜者组 BO3 第二场 6.4
2018/06/05 DOTA
python模拟登录百度贴吧(百度贴吧登录)实例
2013/12/18 Python
python snownlp情感分析简易demo(分享)
2017/06/04 Python
python利用高阶函数实现剪枝函数
2018/03/20 Python
使用实现XlsxWriter创建Excel文件并编辑
2018/05/04 Python
python实现括号匹配的思路详解
2018/08/23 Python
python ddt数据驱动最简实例代码
2019/02/22 Python
Windows下Anaconda和PyCharm的安装与使用详解
2020/04/23 Python
Python 防止死锁的方法
2020/07/29 Python
美国第二大连锁书店:Books-A-Million
2017/12/28 全球购物
什么是事务?为什么需要事务?
2012/01/09 面试题
逃课上网检讨书
2014/02/20 职场文书
电子商务求职信
2014/06/15 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书
街道社区活动报告
2015/02/05 职场文书
2014年个人总结范文
2015/03/09 职场文书
Rust 连接 PostgreSQL 数据库的详细过程
2022/01/22 PostgreSQL
canvas实现贪食蛇的实践
2022/02/15 Javascript