在ipython
中,我定义了一个名为c
的宏(此宏清除了屏幕)。
当我输入
时,我注意到了c = 2 + 2
我的宏c
被执行了。我原以为,我不是在调用宏,而是分配变量c。
有没有办法区分两者(宏观与变量分配)?
答案 0 :(得分:2)
我看不到任何简单的方法来覆盖或区分宏与变量,但macros
可以以python
变量名称中不合法的字符开头:
您可以使用1c, $c
或任何其他无法与python变量名冲突的变体。
答案 1 :(得分:1)
globals()['c'] = 2 + 2
将重新分配c
的值(从而将其与宏的定义取消关联)。
我认为您最好的选择是重命名宏或变量。