【问题标题】:Python detect if code is run on Pydev/EclipsePython 检测代码是否在 Pydev/Eclipse 上运行
【发布时间】:2020-04-04 02:46:58
【问题描述】:

有没有办法从 python 代码中检测代码是在 Eclipse 上运行还是使用 PyDev?

【问题讨论】:

  • 我不知道你的用例,但这通常是个坏主意,ide 被设计为像你通常那样运行代码。
  • 从 IDE 运行的代码与直接从终端运行的代码相比,输入文件的相对路径不同。所以我想利用这个区别来适当地改变输入文件的路径。无论在哪里运行,我都希望代码保持不变。所以这个输入文件的路径可能会有所不同。
  • 您通常可以在 ide 设置中执行此操作。
  • 我通过参数文件将参数传递给我的代码,该文件由 argparse 模块进一步处理。所以参数文件的内容不应该改变。
  • 是的,但是您可以在 IDE 中更改路径,使其与终端中的路径匹配。

标签: python eclipse pydev


【解决方案1】:

这段代码是我正在使用的:

    import os
    if 'PYDEV_CONSOLE_ENCODING' not in os.environ:
        main()
    else:
        path = r'C:\Users\Default' 
        main([path, '--db','x:\\out.db3', '--clear'])

如果在 Eclipse IDE 之外运行,我的 main 将从命令行获取参数,因为没有提供任何参数。否则,它将使用“else”子句中提供的参数,并允许我调试在 Eclipse IDE 中运行 pyDev 的特定案例。

【讨论】:

  • 它对我不起作用,但它让我研究了系统变量。对我来说这有效:如果 os.environ 中的“PYDEVD_LOAD_VALUES_ASYNC”:
猜你喜欢
  • 2012-09-02
  • 1970-01-01
  • 2015-12-24
  • 1970-01-01
  • 2021-11-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多