2012-03-15 48 views
3

場景: 我經常在iPython的'pylab'模式下進行交互式數據分析。在這些會話中,我創建了許多間歇性變量,有時我忘記了所謂的事情,特別是如果分析會話運行數天(顯然中斷)。如何在iPython會話中識別/查找自創的變量?

現在的問題是,使用dir()命令可以看到此iPython會話中的所有已定義變量,但因爲它是一個pylab會話,所以許多重要的numpy和matplotlib命令位於全局命名空間中,並且基本上找不到希望我自己定義的變量在這個龐大的列表中。

有沒有什麼辦法來過濾這個'導入'的和創建的,這樣我只能看到我在這個會話期間手動創建的變量?

回答

2

ipython的神奇功能%誰應該做的工作。

+1

在附註中,當你在ipython shell中時,它只是'who'(或'%who',如果自動魔法未打開的話)。 (直接調用它不會起作用) – 2012-03-15 15:12:07

+0

who()會調用numpy.who(),因爲這是在pylab會話中。 %的人做這項工作,不幸的是我需要使用%,即使是自動魔法,因爲pylab會話,其中一個空的「誰」會鏈接到numpy.who函數。 – 2012-03-15 15:18:14