sys模块
sys模块是Python标准库中最常用的模块之一。通过它可以获取命令行参数,从而实现从程序外部向程序传递参数的功能,也可以获取程序路径和当前系统平台等信息。
接下来演示通过sys模块获取命令行参数,如下所示。
1 import sys
2 print(sys.argv)
3 print("参数个数:" + str(len(sys.argv)));
4 for i in range(len(sys.argv)):
5 print("" + str(i + 1) + ": " + sys.argv[i])
运行结果如下图所示。
运行结果
在上例中,注意执行程序时,需要开启终端模式(在PyCharm中,选择【View】->【Tool Windows】->【View】->【Terminal】即可)。从程序运行结果可看出,在命令行中输入了三个参数,分别为'1.py'、 'sunyuyu'、'666'。
在导入模块时,用户省略了模块文件的路径和扩展名,但Python解释器可以找到对应的文件,这是因为Python解释器会按特定的路径来搜索模块文件,用户可以通过sys.path获取搜索模块的路径,如下所示。
1 import sys
2 print(sys.path)
运行结果如下图所示。
运行结果
在上例中,第2行通过print()函数打印出搜索模块路径。sys.path通常由四部分组成,具体如下所示:
-
程序的当前目录(可用os模块中的getcwd()函数查看当前目录名称)
-
操作系统的环境变量PYTHONPATH中包含的目录(如果存在)
-
Python标准库目录
-
任何.pth文件包含的目录(如果存在)
platform模块
platform模块提供了很多方法获取有关开发平台的信息,如下所示。
1 import platform
2 print(platform.platform()) # 获取当前操作系统名称及版本号
3 print(platform.architecture()) # 获取计算机类型信息
4 print(platform.python_build()) # 获取Python版本信息
5 print(platform.python_compiler()) # 获取Python编译器信息
运行结果如下图所示。
运行结果
在上例中,通过platform模块可以获取有关开发平台的相关信息。
random模块
random模块用于生成随机数,其中主要函数如下表所示。
函数 | 说明 |
---|---|
random() | 返回一个0到1之间的随机浮点数n(0≤n<1) |
uniform(a, b) | 返回一个指定范围内的随机符点数n(a≤n≤b或b≤n≤a) |
randint(a, b) | 返回一个指定范围内的整数n(a≤n≤b) |
randrange ([start], stop[, step]) | 从指定范围内按指定基数递增的集合中获取一个随机数 |
choice(sequence) | 从序列中获取一个随机元素 |
shuffle (x[, random]) | 用于将一个列表中的元素打乱 |
sample(sequence, k) | 从指定序列中随机获取指定长度k的片断,原有序列不会被修改 |
接下来演示random模块中主要函数的用法,如下所示。
1 import random
2 print(random.random()) # 生成0到1之间的一个随机浮点数
3 print(random.uniform(3, 5)) # 生成3到5之间的一个随机浮点数
4 print(random.uniform(5, 3)) # 生成3到5之间的一个随机浮点数
5 print(random.randint(0,5)) # 生成0到5之间的一个随机整数
6 print(random.randrange(0, 6, 2)) # 从0、2、4中随机获取一个数
7 list = [1, 2, 3, 4, 5, 6]
8 random.shuffle(list) # 打乱列表list中的元素
9 print(list)
10 print(random.sample(list, 4)) # 从列表list中随机获取4个元素
运行结果如下图所示。
运行结果
在上例中,通过random模块可以生成随机数,注意每次运行程序时,结果可能会发生变化。