Python 第194-196 个小例子

Python与算法社区

共 1711字,需浏览 4分钟

 ·

2021-03-02 22:16

194 python对象转json对象

import json
# a Python object (dict):
python_obj = {
  "name""David",
  "class":"I",
  "age"6  
}
print(type(python_obj))

使用json.dumps方法转化为json对象:

# convert into JSON:
j_data = json.dumps(python_obj)

# result is a JSON string:
print(j_data)

带格式转为json

若字典转化为json对象后,保证键有序,且缩进4格,如何做到?

json.dumps(j_str, sort_keys=True, indent=4)

例子:

import json
j_str = {'4'5'6'7'1'3'2'4}
print(json.dumps(j_str, sort_keys=True, indent=4))

195 发现列表前3个最大或最小数

使用堆模块 heapq 里的 nlargest 方法:

import heapq as hq
nums_list = [253522851465752258]

# Find three largest values
largest_nums = hq.nlargest(3, nums_list)
print(largest_nums)

相应的求最小3个数,使用堆模块 heapq 里的 nsmallest 方法:

import heapq as hq
nums_list = [253522851465752258]
smallest_nums = hq.nsmallest(3, nums_list)
print("\nThree smallest numbers are:", smallest_nums)

196 使用堆排序列表为升序

使用 heapq 模块,首先对列表建堆,默认建立小根堆,调用len(nums) 次heappop:

import heapq as hq

nums_list = [18141098793241]
hq.heapify(nums_list)
s_result = [hq.heappop(nums_list) for _ in range(len(nums_list))]
print(s_result)


更多例子,请点击阅读原文学习:

浏览 50
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报