AttributeError: 'str' object has no attribute '__name__'
AttributeError: 'str' object has no attribute '__name__'
导致此错误的原因是什么?难道不能在代码中注释掉这样的行吗?
for i in (Class_1, """Class_2, Class_3"""):
name = i.__name__
Class_1
、Class_2
和Class_3
是类在上层代码之前声明的。
错误输出:
> Traceback (most recent call last):
File "", line 2, in <module>
name = i.__name__
AttributeError: 'str' object has no attribute '__name__'
Process finished with exit code 1
Error message line edited to fit the example code
你说的是什么意思
for i in (Class_1, """Class_2, Class_3"""):
当你迭代这个元组时,第二个元素是一个字符串,因此导致错误。
删除三引号字符串 """Class_2, Class_3"""
以避免迭代它,这就是您在本例中所做的,所以它看起来像 for i in (Class_1,)
(括号是可选的)。
您似乎想注释掉那些不必要的部分,但请注意,从技术上讲,那些三引号字符串不是注释,因此它们仍然会在您不希望的某些区域影响脚本。
导致此错误的原因是什么?难道不能在代码中注释掉这样的行吗?
for i in (Class_1, """Class_2, Class_3"""):
name = i.__name__
Class_1
、Class_2
和Class_3
是类在上层代码之前声明的。
错误输出:
> Traceback (most recent call last):
File "", line 2, in <module>
name = i.__name__
AttributeError: 'str' object has no attribute '__name__'
Process finished with exit code 1
Error message line edited to fit the example code
你说的是什么意思
for i in (Class_1, """Class_2, Class_3"""):
当你迭代这个元组时,第二个元素是一个字符串,因此导致错误。
删除三引号字符串 """Class_2, Class_3"""
以避免迭代它,这就是您在本例中所做的,所以它看起来像 for i in (Class_1,)
(括号是可选的)。
您似乎想注释掉那些不必要的部分,但请注意,从技术上讲,那些三引号字符串不是注释,因此它们仍然会在您不希望的某些区域影响脚本。