以编程方式确定 DSX 中是否 运行

Programmatically determine if running in DSX

如何以编程方式确定笔记本中的 python 代码在 DSX 下是否为 运行?

我希望能够在本地 Jupyter notebook 和 DSX 下做不同的事情。

您可以打印您的环境或查找一些特定的环境变量。我相信你会发现一些不同之处。

例如:

import os
if os.environ.get('SERVICE_CALLER'):
  print ('In DSX')    
else:
  print ('Not in DSX')

虽然另一个答案中介绍的方法(查找特定的环境变量)在今天有效,但将来可能会失效。这不是 DSX 公开的官方 API。如果有人决定在他们的 non-DSX 系统上设置这些环境变量,它显然也不起作用。

我对此的看法是 "No, there is no way to reliably determine whether the notebook is running on DSX"。

总的来说,(在我看来)笔记本并不是真正设计成可以随意部署在任何地方的神器;总是需要有人戴着 "application developer" 帽子并对其进行改造 - 如何做到这一点,您可以将其放入笔记本内的降价单元格中。