有没有办法检测python / django中是否有命令提示符?

时间:2013-04-23 01:35:23

标签: python django

我有一些代码有时会从命令行(django管理命令)运行,有时不运行(django changelist action)。在这段代码中,如果引发了某个异常,我可以获得一些用户输入,并在命令提示符(stdin)可用时继续运行。否则,我需要让异常传播或做一些不同的事情。

e.g。

def copy_account_settings(old_acct_domain, new_acct_domain):
  try:
    new_account = Account.objects.get(domain = new_acct_domain)
  except Account.DoesNotExist:
    print ("Couldn't find an account matching %s." % new_acct_domain)
    if <command prompt is available>:
      print "Would you like to create the account? (y/n)"
      if raw_input().lower().strip()='y':
        # get some more input and create the account and move on
    else:
      raise

你会怎么做?

1 个答案:

答案 0 :(得分:0)

也许您可以查看TTY?

import os
if os.isatty(0):

如果会话是交互式的,则应该返回true,否则返回false。