您要描述燃烧过程的图像
为了排序元素,我创建了
main.py
来运行示例 properties.py
class SolidProp:
def __init__(self,ua):
self._ultimate = Ultimate(ua)
@property
def ultimate(self):
return self._ultimate
class Ultimate:
def __init__(self,ua: dict):
self._comp = ua
@property
def comp(self):
return self._comp
combustion.py
from properties import *
class Combustion:
def __init__(self,ultimate):
self.fuel = SolidProp(ua=ultimate)
main.py
from combustion import *
burner = Combustion({'CH4':0.75, 'C2H4':0.25})
在ipython控制台(bash中)中,不会自动识别以下内容(但可以调用):
Python 3.7.2 (default, Dec 29 2018, 06:19:36)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.2.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]: run 'main.py'
In [2]: burner.fuel.ultimate.comp
Out[2]: {'CH4': 0.75, 'C2H4': 0.25}
这与通过*.ultimate
中的装饰器定义properties.py
(请参见@property
)有关,但我希望能够在*.ultimate.comp
中自动完成burner.fuel.ultimate
ipython控制台,因此人们可以直观地使用它。
示例
burner.fuel.ultimate.comp
被识别burner.fuel.ultimate
被不识别在ipython控制台中,看不到Python 3.7.2 (default, Dec 29 2018, 06:19:36)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exec(open("main.py").read())
>>> burner.fuel.ultimate.comp
{'CH4': 0.75, 'C2H4': 0.25}
以外的任何方法或属性。当人们不知道这些方法存在时,这使得人们不直观地使用它。
备注: IDE pycharm的ipython控制台运行正常!?
在python控制台中运行它:
<ion-content padding>
<ion-list radio-group>
<ion-list-header>
Auto Manufacturers
</ion-list-header>
<ion-item *ngFor="let entry of array">
<ion-radio (click)="getVal()" slot="start" [value]="entry"></ion-radio>
<ion-label> {{entry}}</ion-label>
</ion-item>
</ion-list>
</ion-content>
工作正常。但是为什么不从终端在ipython控制台中呢?