方法在python中迭代另一个方法
我为度量做了一些编码,我有一个样本类,这个类中的每个方法都是一些实际的度量,比如方法在python中迭代另一个方法,python,methods,generator,Python,Methods,Generator,我为度量做了一些编码,我有一个样本类,这个类中的每个方法都是一些实际的度量,比如 sample = Sample() sample.measure_ivc(*args) 现在我想对一组外部参数重复一个特定的测量,比如说,温度。理想情况下,它应该看起来像 sample.measure_ivc(*args).iterate_T(T_list) 或 我有许多不同的测量过程,因此我希望避免为每个过程定义measure\u ivc\u T()。 当然,我可以将度量方法名称及其参数传递给iterate\
sample = Sample()
sample.measure_ivc(*args)
现在我想对一组外部参数重复一个特定的测量,比如说,温度。理想情况下,它应该看起来像
sample.measure_ivc(*args).iterate_T(T_list)
或
我有许多不同的测量过程,因此我希望避免为每个过程定义measure\u ivc\u T()
。
当然,我可以将度量方法名称及其参数传递给iterate\u method\u over\u T()
,但它看起来很混乱,尤其是iterate\u T()
需要自己的参数时
到目前为止,我提出的最优雅的解决方案是
class Sample():
def ivc(self, *args) :
print(' meas ivc')
return
def iterate_T(self, T_list):
for t in T_list:
print (f'set T to {t}')
yield self
但它只能这样工作
sample = Sample()
[s.ivc(*args) for s in sample.iterate_T(T_list)]
它能更好/更接近我的要求吗?我不清楚这里是如何涉及
T\u list
的是,对不起,我想在T\u list中迭代T,即调用measure\u ivc()每次我都不知道你想做什么。你能给我们看一个简单的t\u列表
吗?你的预期结果是什么?t\u列表
只是我想在每次测量ivc
之前设置的温度值的列表。换句话说,我想定义一个方法,它迭代另一个方法,并在迭代之间执行smthg else。对于T\u列表中的T:set(T),measure\u Ivc(),它的很简单,但我想知道是否有更整洁、更具python风格的东西
sample = Sample()
[s.ivc(*args) for s in sample.iterate_T(T_list)]