【Python】知识点零碎学习2

json.dump

复制代码
json.dump(想要保存的对象, 文件对象)

常用参数:

indent:缩进量,让生成的文件易读

ensure_ascii:设置为False时,可以正常显示中文;默认值为True,将所有传入的非ASCII字符转义输出

with open() as f安全操作文件

复制代码
with open("aa.json","w") as f:
    json.dump(content, f)

json.load

json文件格式:字典、列表、数字、字符串

不是以.json结尾的文件就是json文件,不能通过后缀来判断。

无论有没有后缀,或者后缀是.txt等,只要文件内容符合上面的格式,都可以使用json load

复制代码
with open("aa.json","r") as f:
    data=json.load(f)

open

open(name, mode\[, buffering])

name:要进行操作的文件名称

mode:操作方式,"r"默认,"w",

复制代码
file = open("example.txt", "r")

f=open('test.txt', 'r', encoding='utf-8')

with open('test.txt', 'r', encoding='utf-8')as f:
    print(f.read())

torch.softmax

参考:https://zhuanlan.zhihu.com/p/525276061

输出是概率分布

torch.nn.functional.softmax(input, dim=None, _stacklevel=3, dtype=None)

dim:在哪个维度对input进行操作,默认为1

对于二维输入来说,dim = -1表示行,dim = -2 表示列;

dim = 0表示列,dim=1表示行

三维(C, H, W):

dim=0时, 是对每一维度相同位置的数值进行softmax运算,和为1

dim=1时, 是对某一维度的列进行softmax运算,和为1

dim=2(-1)时, 是对某一维度的行进行softmax运算,和为1

四维(B, C, H, W):

当dim=0时,每个batch(不同B)对应位置(相同CHW)求softmax

当dim=1时,不同C对应位置(相同BHW)求softmax

当dim=2时,不同H对应位置(相同BCW)求Softmax

当dim=3 或dim=-1,不同W对应元素(相同BCH)求softmax


sorted()

参考:https://zhuanlan.zhihu.com/p/106009216

参数reverse:指定为True时,降序排列;默认是升序

参数key:需要一个函数,按照这个函数进行排序

对列表、元组、集合、字符串进行排序,**输出的都是列表,**原始的值不会更改

复制代码
numbers = [6, 9, 3, 1]
sorted(numbers)#[1, 3, 6, 9]

l = ['harry', 'Suzy', 'al', 'Mark']
sorted(l, key=str.lower)#['al', 'harry', 'Mark', 'Suzy']按照小写排序,但输出仍是大写

按照字母顺序对字符串进行排序,返回的是一个列表,字符升序;可以使用join将字符连接起来

复制代码
str="apple"
res=''.join(sorted(str))#res="aelpp"

str= 'I like to sort'
sorted_str= sorted(string_value.split())#['I', 'like', 'sort', 'to']

sort()

有相同的key和reverse关键字参数

只能与列表一起使用;返回None并修改原来的值

复制代码
numbers = [6, 9, 3, 1]
numbers.sort()

字典遍历

复制代码
dic={"wangming":123,"lisi":345}

for d in dic:#遍历key
    print(d)

for d in dic.values():#遍历value
    print(d)

for name,num in dic.items():#遍历键值对
    print(f"{name}:{num}")
相关推荐
fqbqrr2 小时前
2606C++,C++构的多态
开发语言·c++
biter down2 小时前
从 0 到 1 搭建 Python 接口自动化测试框架(博客系统实战)
开发语言·python
小宋加油啊3 小时前
学习机械臂相关知识
学习
肖永威4 小时前
Python多业务并行计算框架插件化演进:从硬编码到动态注册
python·插件化·并行计算·动态注册
yz_aiks4 小时前
Linux Jar包配置Systemd自启动实战:从排查到配置全流程
linux·python·jar·自启动·systemd
threelab4 小时前
Three.js 物理模拟着色器 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
武器大师724 小时前
lv_binding_js 代码解读
开发语言·javascript·ecmascript
不知名的老吴4 小时前
线程的生命周期之线程“插队“
java·开发语言·python
kaikaile19955 小时前
数字全息图处理系统(C# 实现)
开发语言·c#