小知识点补充
一、json大字符串
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它以易于阅读和编写的方式为基础,同时也易于解析和生成。因为其简洁性和可读性,JSON已成为数据交换的首选格式。
大字符串是指包含大量数据的字符串。在使用JSON时,大字符串可以存储或传输大量的JSON数据。大字符串可以用于存储或传输复杂的结构化数据,例如从数据库中检索的数据、从API调用中返回的数据等。
在前端开发中,大字符串通常用于获取或存储包含大量数据的JSON对象。例如,当使用ajax请求从服务器获取数据时,服务器通常会将数据以JSON格式包装在一个大字符串中返回给前端,然后前端可以解析这个字符串来获取数据并进行相应的处理。
在后端开发中,大字符串通常用于将复杂的数据结构转换为JSON格式进行传输。例如,在使用Python进行后端开发时,可以将大量的数据结构(如字典、列表等)转换为JSON格式的大字符串,然后通过网络传输给前端。
例如可以把某东的某件商品的评论提取出来,例如随机截取一个片段
"id": "a2cc2478caba42fc", "name": "时尚美观", "count": 188, "type": 4, "canBeFiltered": True, "stand": 1, "rid": "a2cc2478caba42fc", "ckeKeyWordBury": "eid=104^"
从表面看其是字典类型,那么给他定义一个名字,
dict_a = {"id": "a2cc2478caba42fc",
"name": "时尚美观",
"count": 188,
"type": 4,
"canBeFiltered": True,
"stand": 1,
"rid": "a2cc2478caba42fc",
"ckeKeyWordBury": "eid=104^"}
那么可以通过两个函数对其进行处理,
1、json.jumps(dict):把字典类型数据转换成json类型数据
2、json.loads(str):把字符串类型转化成字典类型
dict_a = {"id": "a2cc2478caba42fc",
"name": "时尚美观",
"count": 188,
"type": 4,
"canBeFiltered": True,
"stand": 1,
"rid": "a2cc2478caba42fc",
"ckeKeyWordBury": "eid=104^"}
import json
# dict数据转换成为json字符串
str_dict = json.dumps(dict_a)
print(str_dict, type(str_dict))
# 把json字符串转换为dict 然后可以使用字典的方法去处理
dict_b = json.loads(str_dict)
print(dict_b, type(dict_b))
二、快排
即快速排序(Quicksort),是一种常用的排序算法,它通过将一个待排序的数组分成较小和较大的两个子数组,然后对这两个子数组分别递归地进行排序,最终使整个数组有序。
快速排序的基本思想是选择一个基准元素(pivot),将数组分成左右两个部分,其中左边部分的元素都小于等于基准元素,右边部分的元素都大于等于基准元素。然后再对左右两部分分别递归地进行排序,直到每个子数组只包含一个元素或为空。
视频演示如下:(图像为网络摘取)
def quick_sort(li):
# 出口
if len(li) == 1 or len(li) == 0:
return li
# 分治法 二分 大的放右边 小的放左边
mid = li[len(li) // 2]
left = []
right = []
li.remove(mid)
for i in li:
if i > mid:
right.append(i)
else:
left.append(i)
# 左右和右边的列表需要做同样的事情
return quick_sort(left) + [mid] + quick_sort(right)
pass
if __name__ == '__main__':
print(quick_sort([34, 5, 6, 23, 56, 42, 342, 12, 35, 3, 4513, 431]))
pass