首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python:有没有可能检测到我是否在贴纸壳中?

python:有没有可能检测到我是否在贴纸壳中?
EN

Stack Overflow用户
提问于 2012-06-18 18:07:08
回答 1查看 86关注 0票数 1

我使用Python + ZOPE/ZODB/Repoze BFG (缩略语都很混乱)+ paster。

我有一个贴纸壳,我可以通过这样做运行:

代码语言:javascript
复制
paster --plugin repoze.bfg bfgshell site.ini zodb

一切都很好。然而,我有一堆被打开的监控内容--将调试信息打印到stdout的线程--在我刚启动shell时真的不需要运行。是否有可能以某种方式检测启动代码是否在shell中运行?因此,如果代码检测到外壳是而不是 on,它将启动这些线程,如果外壳,则不会启动。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-19 09:32:40

bfgshell安装时将使用IPython,否则将使用code InteractiveInterpreter。您可以使用以下任何一种方法进行测试:

代码语言:javascript
复制
import sys

def in_shell():
    # Interactive prompt sets sys.ps1
    if hasattr(sys, 'ps1'):
        return True

     # __IPYTHON__ is defined when running under IPython
    return '__IPYTHON__' in __builtins__
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11088523

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档