Возникли проблемы с поиском и вставкой в ​​массив во время цикла - PullRequest
0 голосов
/ 21 апреля 2020

Итак, у меня есть файл output.txt, который я просматриваю l oop, просматривая эту строку "вероятность = 7.5098503e-03", и всякий раз, когда она обнаруживается, помещает это значение вероятности в массив.

Я думаю, что мой поиск "вероятности" в строке не работает, так как я получаю эту ошибку:

Файл "test.py", строка 29, в поиске

если вероятность в строке:

NameError: глобальное имя 'вероятность' не определено

Я также не уверен, что я помещаю вероятности в массив каждые l oop тоже будет работать правильно ...

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')

Мне бы очень хотелось помочь этому удивительному интеллектуальному сообществу!

1 Ответ

1 голос
/ 21 апреля 2020

Вам нужно добавить кавычки для того, чтобы это был строковый литерал

if 'probability' in line:

В противном случае эта строка ожидала бы probability является переменной

...