您的位置:首页 > 编程语言 > Python开发

Python3下不要版本号批量编译.pyc文件

2016-06-28 16:49 555 查看
code say:

#encoding=utf-8
#author: walker
#date: 2016-06-28
#summary: 编译当前文件夹下所有.py文件

import os, sys, shutil
import py_compile

cur_dir_fullpath = os.path.dirname(os.path.abspath(__file__))

#清空目录
def ClearDir(dir):
print('ClearDir ' + dir + '...')

for entry in os.scandir(dir):
if entry.name.startswith('.'):
continue
if  entry.is_file():
os.remove(entry.path)    #删除文件
else:
shutil.rmtree(entry.path)    #删除目录

#编译当前文件夹下所有.py文件
def WalkerCompile():
dstDir = os.path.join(cur_dir_fullpath, 'walker_compile')
if os.path.exists(dstDir):	#如果存在,清空
ClearDir(dstDir)
else:						#如果不存在,创建
os.mkdir(dstDir)

for filename in os.listdir(cur_dir_fullpath):
if not filename.endswith('.py'):
continue
srcFile = os.path.join(cur_dir_fullpath, filename)
if srcFile == os.path.abspath(__file__):	#自身
continue
dstFile = os.path.join(dstDir, filename + 'c')
print(srcFile + ' --> ' + dstFile)
py_compile.compile(srcFile, cfile=dstFile)

if __name__ == "__main__":
WalkerCompile()


相关阅读:
1、py_compile
2、compileall — Byte-compile Python libraries
3、PEP 3147 -- PYC Repository Directories
4、关于Python的编译

*** walker ***
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 版本号 compile