本文共 2356 字,大约阅读时间需要 7 分钟。
Python random 模块是Python标准库中用于生成随机数的工具。它提供了多种随机数生成器,能够满足不同场景的需求。random 模块广泛应用于验证、抽样、加密等领域。
random() 函数[0, 1) 内的随机浮点数。import randomnum1 = random.random() # 0.2739237072907895num2 = random.random() # 0.8903373291990494
seed() 函数import randomrandom.seed() # 使用默认种子random.seed(10) # 使用整数种子random.seed("hello", 2) # 使用字符串种子randrange() 函数start(可选,默认为0):随机数的起始值。stop(必需):随机数的终止值。step(可选,默认为1):随机数的步长。import randomnum = random.randrange(1, 10, 2) # 随机返回一个1到10之间的奇数
randint() 方法start:起始值。stop:终止值。import randomprint(random.randint(1, 9)) # 输出1到9之间的随机整数
uniform() 方法a:起始值。b:终止值。import randomprint(random.uniform(10, 20)) # 输出10到20之间的随机浮点数
Python json 模块专门用于对JSON数据进行编解码。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛应用于前后端数据传输。
dumps() 方法import jsondata_dict = { "key2": "value2", "key1": 18, "key3": "http://www.baidu.com"}json_str = json.dumps(data_dict) # JSON字符串loads() 方法import jsonjson_str = '{"key2": "value2", "key1": 18, "key3": "http://www.baidu.com"}'data = json.loads(json_str)print(data) # 输出字典类型数据dump() 方法import jsonwith open('demo.json', 'wt') as f: json.dump(data_dict, f)load() 方法import jsonwith open('demo.json', 'rt') as f: data = json.load(f) print(data) # 输出解码后的Python对象| Python 类型 | JSON 类型 |
|---|---|
| dict | object |
| list | array |
| tuple | array |
| int | number |
| float | number |
| str | string |
| bool | boolean |
| None | null |
| True/False | true/false |
| 1.0/0.0 | 1/0 |
| NaN/INF | null/true |
import jsondata_dict = { "key2": "value2", "key1": 18, "key3": "http://www.baidu.com"}json_str1 = json.dumps(data_dict) # 未排序json_str2 = json.dumps(data_dict, sort_keys=True) # 有序输出print("Python 原始数据:", repr(data_dict))print("JSON 对象1:", json_str1)print("JSON 对象2:", json_str2) import jsondata = { "key2": "value2", "key1": 18, "key3": "http://www.baidu.com"}with open('demo.json', 'wt') as f: json.dump(data, f)with open('demo.json', 'rt') as f: data = json.load(f) print(data, type(data)) 通过以上内容可以看出,random 模块和 json 模块在Python编程中具有重要的应用价值。随机数生成器能够满足各种开发需求,而JSON 模块则负责数据的高效传输与存储。
转载地址:http://yqafk.baihongyu.com/