贡献者: addis; shizy0808
在 “Python 入门” 中,我们示范了如何从 math
模块中引入一些变量和函数(如 pi
和 sin
)。现在我们来学习 Python 模块的原理。
事实上,Python 的模块可以是任意一个普通的 .py
拓展名的文件。这个文件中可以定义全局变量,函数,类,甚至是可执行的命令。当我们要在其他 .py
文件中使用这个文件中的函数或全局变量,只需要声明把前者作为模块使用即可。
例如创建模块文件
plus1
,这个命令和下面的 print()
都会在模块被 import
时执行。关于创建模块的更多细节详见 “Python 模块笔记”。
现在,我们我们在同一文件夹中新建如下文件,就可以用 import
语句来使用我们刚刚创建的模块。
除了内建模块外,Python 默认只会在当前文件夹(即路径)下搜索模块文件。若要添加其他搜索路径,可以在 import
命令之前使用
路径
既可以是绝对路径也可以是相对路径。例如要指定当前路径的子文件夹 modules
,则使用 'modules/'
即可;如果是上层文件夹中的子文件夹,可用 '../modules/'
。
import module名字
以后,可以用 module名字.__file__
查看 module 的文件路径。
在上面的例子中,如果在 mymodule.py
文件中使用了 import
语句导入其他模块中的函数和变量等,那么在其 test.py
中也可以使用这些函数和变量。例如在 mymodule.py
第一行插入
test.py
中就可以使用 mymodule.pi
获取这个变量。但如果把这行改为
那么在 test.py
中要使用 mymodule.math.pi
才能获取这个变量。
__init__.py
文件(内容通常为空)用于把所在目录标记为模块目录。例如创建 mymod/__init__.py
以及 mymod/mod1.py
后,如果 mymod
在搜索路径下,那么就可以 import mymod.mod1
或者 from mymod import mod1
。例如:import matplotlib.pyplot as plt
对应的文件就是 matplotlib/pyplot.py
__init__.py
也可以存在于子文件夹中。
Python 中有几个内建模块(built-in module),可以随时导入。
(未完成)
在 Python 中,通常有这几种方式来表示时间(import time
):
时间戳(timestamp):通常来说,时间戳表示的是从 1970 年 1 月 1 日 00:00 (UTC)1 开始按秒计算的偏移量(不包括闰秒)。我们运行 type(time.time())
,返回的是 float
类型精确到 1e-6
秒。
格式化的时间字符串
localtime()
返回当地时间,返回类型为 time.struct_time
,类共有 9 个成员:(年:tm_year
,月:tm_mon
,日:tm_mday
,时:tm_hour
,分:tm_min
,秒:tm_sec
,周几:tm_wday
(周 1 是 0),一年中第几天:tm_yday
,是否夏令时:tm_isdst
)
gmtime()
返回 GMT 时间,返回类型同样为 time.struct_time
随机生成内容。
目录与文件操作
1. ^ 这个时刻也叫 epoch
友情链接: 超理论坛 | ©小时科技 保留一切权利