code say:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#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()
|
相关阅读:
2、compileall — Byte-compile Python libraries
3、PEP 3147 -- PYC Repository Directories
*** walker ***
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1793685如需转载请自行联系原作者
RQSLT