非常教程

Python参考手册

语言 | Language

compileall

源代码: Lib / compileall.py

该模块提供了一些实用功能来支持安装Python库。这些函数在目录树中编译Python源文件。此模块可用于在安装库时创建缓存的字节码文件,这使得即使对库目录没有写入权限的用户也可使用该模块。

1.命令行使用

该模块可以作为脚本(使用python -m compileall)来编译Python源代码。

directory ...file ...

位置参数是要编译的文件或包含源文件的目录,递归遍历。如果没有给出参数,就像命令行一样-l <directories from sys.path>

-l

不要递归到子目录中,只编译直接包含在指定或隐含目录中的源代码文件。

-f

即使时间戳是最新的,也强制重建。

-q

不要打印已编译文件的列表,只打印错误消息。

-d destdir

预编译到正在编译的每个文件的路径的目录。这将出现在编译时间回溯,也被编译到字节码文件,它会在回溯和其他消息可以使用在情况下,源文件根本不执行字节码文件的时间存在。

-x regex

正则表达式用于搜索考虑编译的每个文件的完整路径,如果正则表达式产生匹配,则跳过文件。

-i list

读取文件list并将其包含的每一行添加到要编译的文件和目录列表中。如果list-,则从中读取行stdin

在版本2.7中更改:添加了该-i选项。

2.公共职能

compileall.compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])

递归地下降由dir命名的目录树,.py沿途编译所有文件。

所述maxlevels参数用于限制递归的深度; 它默认为10

如果给出了ddir,则它被编译为每个被编译以用于编译时间回溯的文件的路径,并且还被编译到字节码文件中,在该文件中将用于回溯和其他消息,文件在执行字节码文件时不存在。

如果force为真,即使时间戳是最新的,模块也会重新编译。

如果给出rx,则会在考虑编译的每个文件的完整路径上调用其搜索方法,如果它返回true值,则会跳过该文件。

如果quiet为真,则除非出现错误,否则不会在标准输出上打印任何内容。

compileall.compile_file(fullname[, ddir[, force[, rx[, quiet]]]])

用路径全名编译文件。

如果给出了ddir,则它将被编译为正在编译的文件的路径作为编译时间回溯的前缀,并且还会被编译到字节码文件中,在该文件中将用于回溯和其他消息,文件在执行字节码文件时不存在。

如果给出了rx,它的搜索方法会将完整路径名称传递给正在编译的文件,如果它返回一个真值,则该文件不会被编译并返回True

如果quiet 为真,则除非出现错误,否则不会在标准输出上打印任何内容。

2.7版本的新功能。

compileall.compile_path([skip_curdir[, maxlevels[, force]]])

字节编译所有.py找到的文件sys.path。如果skip_curdir为true(默认值),则当前目录不包含在搜索中。所有其他参数都传递给该compile_dir()函数。请注意,与其他编译函数不同,maxlevels默认为0

强制重新编译子目录及其所有子目录中的所有.py文件Lib/

import compileall

compileall.compile_dir('Lib/', force=True)

# Perform same compilation, excluding files in .svn directories.
import re
compileall.compile_dir('Lib/', rx=re.compile(r'[/\\][.]svn'), force=True)

扩展内容

Module py_compile 字节编译单个源文件。

Python

Python 是一种面向对象的解释型计算机程序设计语言,由荷兰人 Guido van Rossum 于1989年发明,第一个公开发行版发行于1991年。 Python 是纯粹的自由软件, 源代码和解释器 CPython 遵循 GPL 协议。Python 语法简洁清晰,特色之一是强制用空白符( white space )作为语句缩进。

主页 https://www.python.org/
源码 https://github.com/python/cpython
版本 2.7
发布版本 2.7.13

Python目录

1.内置常量 | Built-in Constants
2.内置例外 | Built-in Exceptions
3.内置函数 | Built-in Functions
4.内置类型 | Built-in Types
5.编译器 | Compiler
6.加密 | Cryptography
7.数据压缩 | Data Compression
8.数据持久性 | Data Persistence
9.数据类型 | Data Types
10.调试和分析 | Debugging & Profiling
11.开发工具 | Development Tools
12.文件和目录访问 | File & Directory Access
13.文件格式 | File Formats
14.构架 | Frameworks
15.输入 | Importing
16.输入/输出 | Input/ouput
17.国际化 | Internationalization
18.网络 | Internet
19.网络数据 | Internet Data
20.翻译 | Interpreters
21.语言 | Language
22.记录 | Logging
23.Mac OS
24.MS Windows
25.多媒体 | Multimedia
26.联网 | Networking
27.数字与数学 | Numeric & Mathematical
28.操作系统 | Operating System
29.可选操作系统 | Optional Operating System
30.限制执行 | Restricted Execution
31.运行 | Runtime
32.SGI IRIX
33.软件包装与分销 | Software Packaging & Distribution
34.字符串 | String
35.结构化标记 | Structured Markup
36.Tk
37.Unix
38.Python 简介
39.Python pass 语句
40.Python 循环嵌套
41.Python 运算符
42.Python log10() 函数
43.Python log() 函数
44.Python floor() 函数
45.Python fabs() 函数
46.Python exp() 函数
47.Python cmp() 函数
48.Python ceil() 函数
49.Python abs() 函数
50.Python Number(数字)
51.Python pow() 函数
52.Python modf() 函数
53.Python min() 函数
54.Python max() 函数
55.Python asin() 函数
56.Python acos() 函数
57.Python uniform() 函数
58.Python shuffle() 函数
59.Python seed() 函数
60.Python random() 函数
61.Python randrange() 函数
62.Python choice() 函数
63.Python sqrt() 函数
64.Python round() 函数
65.Python radians() 函数
66.Python degrees() 函数
67.Python tan() 函数
68.Python sin() 函数
69.Python hypot() 函数
70.Python cos() 函数
71.Python atan2() 函数
72.Python atan() 函数
73.Python 元组
74.Python 列表(List)
75.Python 字符串
76.Python 字典(Dictionary)
77.Python 日期和时间
78.Python 函数
79.Python 模块
80.Python capitalize()方法
81.Python center()方法
82.Python count() 方法
83.Python expandtabs()方法
84.Python endswith()方法
85.Python encode()方法
86.Python decode()方法
87.Python find()方法
88.Python index()方法
89.Python 异常处理
90.Python isspace()方法
91.Python isnumeric()方法
92.Python islower()方法
93.Python isdigit()方法
94.Python isalpha()方法
95.Python isalnum()方法
96.Python isupper()方法
97.Python istitle()方法
98.Python min()方法
99.Python max()方法
100.Python maketrans()方法