『笔记』Python

『笔记』Python

自己总结的一些基础#

起因是自己在主函数里先是写了装饰器,未果后写了类还是函数,运行后貌似都是报错AttributeError: Can't pickle local object 'main_worker..LoaderWithEx,老老实实定义到主函数外就正常了。经过搜索之后感受到了这种定义了临时的有点虚的方法时会在多线程出现问题的感觉。其它人也遇到使用装饰器时有关这个的讨论:

多进程获取返回值是需要序列化的,但是装饰器是无法序列化的,所以报错。查阅资料找到解决办法为:functools.wraps,它可以解除这种束缚,从而变的可序列化。

最近在机器学习保存类数据时也用到了这个方式,因为类中传递了自定义的函数,所以抛出异常:AttributeError: Can't pickle local object

装饰器:

partial()

map()

收集自己见过的技巧#

在类内使用这样的操作把刚刚建成临时的conv_layers储存成一个以head这个字符串命名的类内变量

conv_layers = nn.Sequential(*conv_layers)
self.__setattr__(head, conv_layers)

在ArgumentParser设置arguments的时候使用nargs="+"为一个arg设置不定数量多个值的传入:

作者:traviscui

出处:https://www.cnblogs.com/traviscui/p/16441183.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   traviscui  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示