一个用于生成随机JSON数据的Python脚本。
该脚本可以生成包含指定数量键值对的随机JSON文件。每个键和值都是随机生成的,适用于测试、演示或需要示例数据的场景。
主要特性:
- 确保所有键都是唯一的,避免重复键导致的数据覆盖
- 支持随机种子功能,可生成可重现的随机数据
- 支持多种数据类型(字符串、数字、布尔值、null)
python generate_random_json.py <键值对数量> [-o 输出文件名] [-s 随机种子]num_pairs: 必需参数,指定要生成的键值对数量-o, --output: 可选参数,指定输出文件名(默认:random.json)-s, --seed: 可选参数,指定随机种子以生成可重现的结果
生成包含10个键值对的JSON文件(默认输出到random.json):
python generate_random_json.py 10生成包含50个键值对的JSON文件并指定输出文件名:
python generate_random_json.py 50 -o test_data.json使用指定种子生成可重现的JSON数据:
python generate_random_json.py 10 -o reproducible.json -s 42多次运行相同种子会生成完全相同的JSON内容,适用于测试场景。
- 键(Key):随机生成,格式为前缀(key_, field_, param_, attr_, prop_)+ 3-10位随机字符
- 唯一性保证:所有键都是唯一的,不会出现重复键
- 值(Value):随机生成以下类型之一:
- 字符串:5-20个随机字符
- 数字:-1000到1000之间的随机整数
- 布尔值:True或False
- null值
- 随机种子:可选指定种子值以生成可重现的结果
JSON文件以单行格式输出,没有多余的空格和换行符,便于处理和传输。
运行 python generate_random_json.py 3 可能会生成如下内容:
{"key_abc123":"sample text xyz","field_456def":789,"param_ghi789":true}使用种子运行 python generate_random_json.py 3 -s 42 每次都会生成相同的内容:
{"key_rpo":508,"key_1cbf":-524,"prop_9m8":null}- Python 3.6+
- 无需额外依赖库