有没有办法在我的IPython提示符中获取本地时间戳?

时间:2010-10-07 08:05:00

标签: windows-vista prompt ipython

有没有办法在我的IPython提示符中获取本地时间戳?我在64位Windows Vista上使用IPython 0.10和Python 2.6。

我当前的默认提示是

[C:Python26/Scripts]
|9>

好的,我试着完全按照你的指示行事。但是,我的经验是所有配置编辑最好保存到我的ipy_user_conf.py。引用它:

User configuration file for IPython (ipy_user_conf.py)

This is a more flexible and safe way to configure ipython than *rc files
(ipythonrc, ipythonrc-pysh etc.)

This file is always imported on ipython startup. You can import the
ipython extensions you need here (see IPython/Extensions directory).

Feel free to edit this file to customize your ipython experience.

Note that as such this file does nothing, for backwards compatibility.
Consult e.g. file 'ipy_profile_sh.py' for an example of the things 
you can do here.

See http://ipython.scipy.org/moin/IpythonExtensionApi for detailed
description on what you could do here.

所以我现在在main()中有这些行:

# -- prompt
# A different, more compact set of prompts from the default ones, that
# always show your current location in the filesystem:

o.prompt_in1 = r'\C_LightBlue[\C_LightCyan\Y2\C_LightBlue]\C_Normal\n\C_Green|\#>'
o.prompt_in2 = r'.\D: '
o.prompt_out = r'[\#] '

我得到了这个例子:

16:49:50 In[9]:1/7
1           [9] 0.14285714285714285

16:50:09 In[10]:

问题:

  1. 那是1
  2. 如何在提示中保留当前目录?以前,我有

    [C:Python26/Scripts]
    |8>
    

  3. 再一次有感觉。 我很抱歉我弄得一团糟。我需要报告我实际添加或修改的行:

    import_all("os sys random datetime")
    o.prompt_in1 = r'\C_LightBlue[\C_LightCyan\Y2\C_LightBlue]\C_Normal\n\C_Green|\#>'
    o.prompt_in1 = r'${datetime.now().strftime("%H:%M:%S")}[\#]:'
    o.prompt_out = r'[\#] '
    

1 个答案:

答案 0 :(得分:2)

最简单的方法是编辑ipythonrc(在您的home \ _ipython目录中),并添加以下行:

import_mod datetime
prompt_in1 '${datetime.datetime.now()} In [\#]: '
# or
prompt_in1 '${datetime.datetime.now().strftime("%H:%M:%S")} In [\#]: '

或者,您也可以将import_mod datetime添加到rc文件中,并将其添加到ipy_user_conf.py的main()函数中(在同一目录中):

o = ip.options
o.prompt_in1 = r'${datetime.datetime.now()} In [\#]: '
# or
o.prompt_in1 = r'${datetime.datetime.now().strftime("%H:%M:%S")} In [\#]: '