首页 > 代码库 > 【Python】简易的.cpp文件创建即初始化脚本 ——ACMer专用
【Python】简易的.cpp文件创建即初始化脚本 ——ACMer专用
今天刚刚接触Python,本着学以致用的原则,就写了一个按照要求自动生成.cpp文件并初始化头文件的脚本。
确定你的linux中安装了Python,将下面的代码拷贝进一个文件[filemaker],提权(chmod +x filemaker)
功能:
1、filemaker [文件名],即生成 文件名.cpp
2、filemaker -e [A-Z] 即生成从A到你输入的字母的所有字母.cpp
3、filemaker -n [1-26] 即生成从A开始的你输入个数的文件,大写字母递增
可以将该脚本所在的目录设置环境变量,以后就可以直接使用了
vim ~/.profile
在最后加上
export PATH="目录:$PATH"
保存退出
source .profile
即可
代码如下:
注:第六行的 headfile 是你要初始化的头文件所在的目录
1 #!/usr/bin/python 2 3 import sys 4 5 content = [] 6 headfile = "/home/kevince/Documents/acm/head/acmhead.h" #the directory of the headfile 7 8 #load file head.h and save it with a list 9 def loadcontent(filename):10 f = open(filename)11 lines = f.readlines()12 for line in lines:13 content.append(line)14 15 #main function16 def main():17 loadcontent(headfile) #loadcontent18 arglen = len(sys.argv)19 flag = 120 if arglen == 2: #judge the lenth of arg21 f = open(sys.argv[1] + ‘.cpp‘, "w")22 for index, val in enumerate(content):23 f.write(val)24 f.close()25 sys.exit()26 elif arglen == 3:27 if sys.argv[1] == ‘-n‘:28 e = int(sys.argv[2])29 e = e + ord(‘A‘)30 if e > ord(‘Z‘) or e < ord(‘A‘):31 print "1-26 please!\n"32 sys.exit()33 elif sys.argv[1] == ‘-e‘:34 e = ord(sys.argv[2])35 if e > ord(‘Z‘) or e < ord(‘A‘):36 print "A-Z please!\n"37 sys.exit()38 e = e + 139 else:40 flag = 0;41 else:42 flag = 0;43 if flag == 0:44 print "\n"45 print "iiacm-filemaker [fliename]\n"46 print "or\n"47 print "iiacm-filemaker -n | -e\n"48 print " -n number of files\n"49 print " -e endplace of files\n"50 sys.exit()51 s = ord(‘A‘)52 for t in range(s, e):53 f = open(chr(t) + ‘.cpp‘, "w")54 for index, val in enumerate(content):55 f.write(val)56 f.close 57 58 59 if __name__ == ‘__main__‘:60 main()
【Python】简易的.cpp文件创建即初始化脚本 ——ACMer专用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。