在以下代码中,我得到以下错误:None类型对象没有属性x。当我通过删除FLAGS运行以下代码时,它可以正常工作。但是我想将这些值分配给FLAGS,因为在我的实际代码中,我想为FLAGS分配不同的值。我该如何解决这个问题?
FLAGS = None
c1 =[1.5, 2.0, 2.5]
for i in range(len(c1)):
FLAGS.x = c1[i]
print(FLAGS.x)
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('--x', type=float, default=2.0)
FLAGS = parser.parse_args()
答案 0 :(得分:2)
在初始化FLAGS变量之前,将执行if __name__ == '__main__':
以上的代码。试试这样的东西
import argparse
FLAGS = None
c1 =[1.5, 2.0, 2.5]
def main():
for i in range(len(c1)):
FLAGS.x = c1[i]
print(FLAGS.x)
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('--x', type=float, default=2.0)
FLAGS = parser.parse_args()
main()