2013-11-02 58 views
11

使用標籤,我得到以下信息:不能在Python 3.4使用Tab鍵在Python Shell

Display all 184 possibilites? (y or n) 

有沒有辦法讓在Python 3.4 Tab鍵?

+0

你看到使用選項卡完成,這是難以置信的幫助(通常情況下)的。嘗試做'import sys; sys.'然後點擊標籤,你會看到'sys.'下的所有自動完成選項。你可以(也應該是國際海事組織)使用空格而不是製表符縮進,然後獲得最好的兩個世界。 –

+2

@JoshSmeaton如果你在終端中編寫腳本,使用Tab比使用空格要快得多(而且更可靠)。我討厭在一個類中的方法內計算12個空格。 –

+0

新的建議是使用空格,但單個空格不能將塊分離得足夠多,而4個空格太難以輸出。 –

回答

12

這是在Python 3.4的開發版本中引入的更改。它一直有點爭議。您可能想要發表您的意見on the issue

11

而不是tabb可以使用空格。在交互式解釋器中,您不必輸入4個空格。這裏我使用了兩個空格來最小化擊鍵次數。

if 1 == 1: 
    print('Hello Kitty') 
    print('Oh no, only two spaces for a new block') 

要禁用tab: complete,您可以執行以下操作。

創建或稱爲.pythonrc
在文件中添加以下行並保存

import readline 
readline.parse_and_bind("set disable-completion on") 
readline.parse_and_bind("tab: self-insert") 

編輯您的~/.bashrc文件,並添加以下行

export PYTHONSTARTUP=$HOME/.pythonrc 

開始你的home目錄編輯文件python3口譯員。 Tab應該像以前一樣工作。或者,你可以將完整綁定到另一個鍵而不是選項卡上,並且你將獲得兩個世界中最好的諺語。

+0

完美工作。讓我的標籤縮進回來! – kurzweil4

0

那麼我該如何做到這一點在Windows中?這是脖子上的一大痛苦。

其實,簡單的解決辦法是讓優秀的免費AutoHotkey的鍵盤編程,並把這個在.ahk文件;')

標籤:: 發送{空間} {空間} {空間} {空間}

(你們的編輯並不表明把該事實***是在第二行)。

+0

如何在Windows中可靠地做任何事情。 –

1

編輯這種行爲了,而不必設置環境變量爲您的整個帳戶,你可以做初始化在~/.local/lib/python3.4/site-packages/usercustomize.py。作爲@HaleemurAli寫道,禁用選項卡完成的代碼是:

import readline 
readline.parse_and_bind("set disable-completion on") 
readline.parse_and_bind("tab: self-insert")