博客
关于我
Python random和json模块
阅读量:802 次
发布时间:2023-03-06

本文共 2356 字,大约阅读时间需要 7 分钟。

random模块与json模块入门

random模块

概述

Python random 模块是Python标准库中用于生成随机数的工具。它提供了多种随机数生成器,能够满足不同场景的需求。random 模块广泛应用于验证、抽样、加密等领域。

核心函数解析

1. random() 函数

  • 功能描述:返回一个在区间 [0, 1) 内的随机浮点数。
  • 示例
    import randomnum1 = random.random()  # 0.2739237072907895num2 = random.random()  # 0.8903373291990494

2. seed() 函数

  • 功能描述:设置随机数生成器的种子。种子可以是任何类型的值(如整数、字符串等)。
  • 示例
    import randomrandom.seed()  # 使用默认种子random.seed(10)  # 使用整数种子random.seed("hello", 2)  # 使用字符串种子

3. randrange() 函数

  • 功能描述:返回指定范围内的随机整数。
  • 参数说明
    • start(可选,默认为0):随机数的起始值。
    • stop(必需):随机数的终止值。
    • step(可选,默认为1):随机数的步长。
  • 示例
    import randomnum = random.randrange(1, 10, 2)  # 随机返回一个1到10之间的奇数

4. randint() 方法

  • 功能描述:返回指定范围内的整数。
  • 参数说明
    • start:起始值。
    • stop:终止值。
  • 示例
    import randomprint(random.randint(1, 9))  # 输出1到9之间的随机整数

5. uniform() 方法

  • 功能描述:返回指定范围内的随机浮点数。
  • 参数说明
    • a:起始值。
    • b:终止值。
  • 示例
    import randomprint(random.uniform(10, 20))  # 输出10到20之间的随机浮点数

json模块

概述

Python json 模块专门用于对JSON数据进行编解码。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛应用于前后端数据传输。

核心函数解析

1. dumps() 方法

  • 功能描述:将Python对象编码为JSON字符串。
  • 示例
    import jsondata_dict = {  "key2": "value2",  "key1": 18,  "key3": "http://www.baidu.com"}json_str = json.dumps(data_dict)  # JSON字符串

2. loads() 方法

  • 功能描述:将JSON字符串解码为Python对象。
  • 示例
    import jsonjson_str = '{"key2": "value2", "key1": 18, "key3": "http://www.baidu.com"}'data = json.loads(json_str)print(data)  # 输出字典类型数据

3. dump() 方法

  • 功能描述:将Python对象编码为JSON文件流。
  • 示例
    import jsonwith open('demo.json', 'wt') as f:  json.dump(data_dict, f)

4. load() 方法

  • 功能描述:将JSON文件流解码为Python对象。
  • 示例
    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

实际应用示例

JSON字符串转换

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/

你可能感兴趣的文章
Python 多线程学习(转)
查看>>
python 多进程-基础
查看>>
python 多进程-进阶-进程池
查看>>
python 多进程-进阶-进程间通信之Pipe
查看>>
python 多进程-进阶-进程间通信之Queue
查看>>
Python编程快速入门
查看>>
Python编程基础(附Pycharm与开发环境)
查看>>
python 如何“否定“value : 如果为真则返回假,如果为假则返回真
查看>>
Python 如何在 Web 环境中使用 Matplotlib 进行数据可视化
查看>>
python 如何把字符串转换成浮点数
查看>>
python 如果文件夹不存在就创建文件夹
查看>>
Python 如果有很多或以收缩形式
查看>>
Python 子进程 Popen 与 Pyinstaller
查看>>
Python 子进程 Popen.communicate() 等价于 Popen.stdout.read()?
查看>>
Python 子进程 Popen:为什么会出现“ls *.txt“?不行?
查看>>
Python 子进程参数
查看>>
python 字典 key 和value 互换
查看>>
Python 字典 vs If 语句速度
查看>>
python 字典sorted自定义排序,按照key or value排序
查看>>
python 字典和列表区别_元组列表和字典的主要区别是什么?
查看>>