gpt4 book ai didi

python - 在 python 中,是否有可能使用预定义变量(例如 C 中的#defined)来控制流程

转载 作者:太空宇宙 更新时间:2023-11-04 03:24:09 25 4
gpt4 key购买 nike

脚本(如 python)和高级语言(如 C)在这种行为中看起来有所不同,但我想知道有可能的方式或其他方式来实现这一点。

在我的 python 脚本中,一方面,我想查看蒙特卡洛模拟的过程以查看发生了什么,另一方面,我想运行动态并在最后查看最终结果.目前,可以通过如下更改某些部分来实现。但是,如果我要使用两个不同的 main.py,那将非常麻烦,因为无论何时更改文件中的某些内容,都需要更改另一个文件中的相同部分。本方法如下。这是动画脚本的结构,显示了模拟过程中的每一帧

import python_animation_modules
import ...

def init():
bla, bla
return lines,

def simulation():
globals
bla, bla
set_lines() - redefine data using set_data
return lines,

animation.FuncAniaion(..frames=Nstep..)

plt.show()

我可以更改它以显示最后一个数字。

def init():
bla, bla
return lines,

while (i<Nax_num):
#def simulation():
# globals
bla, bla
set_lines() # redefine data using set_data
#return lines,

#animation.FuncAniation(...MAX_num.)
plt.show()

是否有可能的方式,例如 C 使用预处理器或其他精密技术在 python 。在 C 中,这是可能的,

#define DYNAMICS

#ifndef DYNAMICS
while( i< MAX_num):
#else
def simulation():
# globals

最佳答案

您似乎想使用 #IFDEF 来避免重复代码...但为什么不明确地使用代码呢?像这样的东西:

def simulate():
bla, bla
set_lines()

def simulation():
globals
simulate()
return lines,

def dynamics():
animation.FuncAniation(...MAX_num.)

def no_dynamics():
while (i < MAX_num):
simulate()

if DYNAMICS: dynamics()
else: no_dynamics()
plt.show()

根本的想法是:将公共(public)位分解到它自己的例程中,然后从包含特定案例代码的包装器中调用它。

关于python - 在 python 中,是否有可能使用预定义变量(例如 C 中的#defined)来控制流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42616511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com