首页 > 解决方案 > 在循环期间无法搜索和放入数组

问题描述

所以我有一个 output.txt 文件,我希望循环查找这一行“probability= 7.5098503e-03”,每当找到它时,将该概率值放入一个数组中。

我认为我在行中搜索“概率”不起作用,因为我收到了这个错误:

搜索中的文件“test.py”,第 29 行

如果概率符合:

NameError:未定义全局名称“概率”

我也不确定我将每个循环的概率放入一个数组中是否会正常工作......

prob=[]

voltages = [0.3, 0.32, 0.34, 0.36, 0.38, 0.4, 0.42, 0.44, 0.46, 0.48, 0.5]
for voltage in voltages:
    update_code(voltage)
    os.system("hspice pbit.sp >output.txt")
    def search():
        with open('output.txt') as f:
            datafile = f.readlines()
        for line in datafile:
            if probability in line:
                return True
        return False
    if search():
        print('True')
        prob=[] = line
    else:
        print('False')

我希望得到这个了不起的知识界的帮助!

标签: pythonpython-3.xfunctionfor-loopos.system

解决方案


您需要添加引号使其成为字符串文字

if 'probability' in line:

否则该行将期望probability是一个变量


推荐阅读