import os cmd = 'ls -al' os.system(cmd)
Если вы хотите вернуть результаты команды, вы можете использовать
os.popen
. Однако это не рекомендуется с версии 2.6 в пользу модуля подпроцесса , который хорошо освещает другие ответы.
Отличный вопрос. В принципе это связано с тем, что Parameter
объекты являются подклассом sympy.Symbol
, а из его строки документации:
Symbols are identified by name and assumptions:
>>> from sympy import Symbol
>>> Symbol("x") == Symbol("x")
True
>>> Symbol("x", real=True) == Symbol("x", real=False)
False
Это имеет основополагающее значение для внутренней работы sympy
, и поэтому мы также используем в symfit
. Но значение и фиксированные аргументы не рассматриваются как предположения, поэтому они не используются для различения параметров.
model = sf.Model({y:a*x+b})
b.fixed = True
fit_results = []
for b_value, xdata, ydata in datastream:
b.value = b_value
fit = Fit(model, x=xdata, y=ydata)
fit_results.append(fit.execute())
Поэтому нет необходимости определять новый Parameter
на каждой итерации, атрибут b.value
будет одинаковым в каждом цикле, так что это не может пойти не так. Единственный способ, которым я могу представить, что это идет не так, это если вы используете threading
, это, вероятно, создаст некоторые условия гонки. Но threading
нежелательно для задач, связанных с процессором, в любом случае, multiprocessing
- это путь. И в этом случае отдельные процессы будут порождаться, создавая отдельные микрокосмы, поэтому здесь также не должно быть проблем.
Я надеюсь, что это ответит на ваш вопрос, если не дайте мне знать.
p.s. Я медленно отвечаю на свой путь до 1500, чтобы сделать этот тег, но если кто-то превзойдет меня, я, конечно же, буду счастливее;)