方便模块,允许在CLI和导入中使用pyglotaran作为别名
pyglotaran-alias的Python项目详细描述
pyglotaran别名
方便模块,当使用pyglotaran时,它允许在CLI中使用pyglotaran
作为别名并导入。在
由于glotaran的python实现被重命名为pyglotaran,以防止使用glotaran的模糊性,
有时人们可能会想用import pyglotaran
代替import glotaran
。在
使用
importpyglotaran
或者
^{pr2}$要使自动完成在交互式会话(即python repl
、jupyter-console
或jupyter-notebooks
)中工作,您需要首先导入pyglotaran-alias
,即使用import pyglotaran
。
完成后,glotaran
注册在别名pyglotaran
下,并且自动完成应该可以工作。在
它是如何工作的?在
使用import pyglotaran
时,会发生以下情况:
pyglotaran-alias
的^{} 被调用。在- 模块缓存(
sys.modules
)填充了所有glotaran
模块。在 - {{{cd9>为每个模块添加一个与cd9}相对应的附加条目。在
- 用于修改模块缓存的局部变量将被删除,因此它们不会污染全局变量。在
pyglotaran
全局变量将itself替换为glotaran
包。在
已知问题
当使用文本编辑器
时,Linter在模块“pyglotaran
”中显示错误“No name”<module or attribute name>
'
由于大多数linter使用静态文件分析,它们不理解运行时模块的实时交换,并认为pyglotaran
是在^{Schrödinger-Linter
,它同时是对的和错的。在
使用文本编辑器时,自动完成功能不起作用
这是因为自动完成引擎(类似于linters)使用静态文件分析,因此认为pyglotaran
是在{a7}中定义的。遗憾的是,我还没有找到解决这个问题的方法,因为它还很大程度上取决于所使用的自动完成引擎。在
交互式会话中的自动完成显示pyglotaran
上不属于glotaran
当使用交互会话(即python repl
、jupyter-console
或jupyter-notebooks
)时,自动完成程序将选择被替换的模块,并允许您获得glotaran
中定义的模块和属性的自动完成。
但是由于静态文件分析,它还将获取在^{
- 项目
标签: