出现的离奇错误:AttributeError: ‘function‘ object has no attribute ‘seed‘

2023-11-01 04:15

本文主要是介绍出现的离奇错误:AttributeError: ‘function‘ object has no attribute ‘seed‘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有代码如下:

import random
parser.add_argument('--seed', type=int, default=1)
args = parser.parse_args()torch.manual_seed(args.seed)
if torch.cuda.is_available():torch.cuda.manual_seed(args.seed)
random.seed(args.seed)


但是出现的问题是:

File "/home/zrp/.pycharm_helpers/pydev/pydevd.py", line 1496, in _execpydev_imports.execfile(file, globals, locals)  # execute the scriptFile "/home/zrp/.pycharm_helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfileexec(compile(contents+"\n", file, 'exec'), glob, loc)File "/home/zrp/NestedGNN-master-2/run_tu.py", line 195, in <module>random.seed(args.seed)
AttributeError: 'function' object has no attribute 'seed'

这个错误是因为你的代码中存在一个命名冲突。Python标准库中有一个名为random的模块,你使用了import random,然后又试图使用random.seed(args.seed)来设置随机种子。但是在你的代码中,random不再是指向标准库中的random模块,而是指向你之前导入的random模块的seed函数。

为了解决这个问题,你可以采取以下两种方法之一:

这个错误是因为你的代码中存在一个命名冲突。Python标准库中有一个名为random的模块,你使用了import random,然后又试图使用random.seed(args.seed)来设置随机种子。但是在你的代码中,random不再是指向标准库中的random模块,而是指向你之前导入的random模块的seed函数。

为了解决这个问题,你可以采取以下两种方法之一:

  1. 重命名你的随机模块导入:将导入语句中的random重命名为另一个名字,例如my_random,以避免命名冲突。这样,你就可以像下面这样设置随机种子:
    import random as my_random  # 重命名导入的random模块# 然后使用my_random设置随机种子
    my_random.seed(args.seed)
    

     2. 不使用random模块,直接使用random函数:你可以不导入random模块,而是使用Python的内置random函数来设置随机种子。这样就不会有命名冲突了。示例如下:

# 不导入random模块,直接使用Python内置的random函数
import argparse
import torchparser = argparse.ArgumentParser()
parser.add_argument('--seed', type=int, default=1)
args = parser.parse_args()torch.manual_seed(args.seed)
if torch.cuda.is_available():torch.cuda.manual_seed(args.seed)
import random  # 如果需要在其他地方使用random模块,可以在这里导入
random.seed(args.seed)

选择哪种方法取决于你的偏好和代码的结构。如果你打算在代码的其他地方使用random模块的其他功能,第一种方法可能更合适。如果只是设置随机种子,第二种方法更简单 

这篇关于出现的离奇错误:AttributeError: ‘function‘ object has no attribute ‘seed‘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/320409

相关文章

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

Python中ModuleNotFoundError: No module named ‘timm’的错误解决

《Python中ModuleNotFoundError:Nomodulenamed‘timm’的错误解决》本文主要介绍了Python中ModuleNotFoundError:Nomodulen... 目录一、引言二、错误原因分析三、解决办法1.安装timm模块2. 检查python环境3. 解决安装路径问题

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

前端bug调试的方法技巧及常见错误

《前端bug调试的方法技巧及常见错误》:本文主要介绍编程中常见的报错和Bug,以及调试的重要性,调试的基本流程是通过缩小范围来定位问题,并给出了推测法、删除代码法、console调试和debugg... 目录调试基本流程调试方法排查bug的两大技巧如何看控制台报错前端常见错误取值调用报错资源引入错误解析错误

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

SpringBoot中的404错误:原因、影响及解决策略

《SpringBoot中的404错误:原因、影响及解决策略》本文详细介绍了SpringBoot中404错误的出现原因、影响以及处理策略,404错误常见于URL路径错误、控制器配置问题、静态资源配置错误... 目录Spring Boot中的404错误:原因、影响及处理策略404错误的出现原因1. URL路径错

Java function函数式接口的使用方法与实例

《Javafunction函数式接口的使用方法与实例》:本文主要介绍Javafunction函数式接口的使用方法与实例,函数式接口如一支未完成的诗篇,用Lambda表达式作韵脚,将代码的机械美感... 目录引言-当代码遇见诗性一、函数式接口的生物学解构1.1 函数式接口的基因密码1.2 六大核心接口的形态学

Java中Object类的常用方法小结

《Java中Object类的常用方法小结》JavaObject类是所有类的父类,位于java.lang包中,本文为大家整理了一些Object类的常用方法,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. public boolean equals(Object obj)2. public int ha