Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';在pythonshell中不使用Tab_Python_Python 3.4 - Fatal编程技术网

Can';在pythonshell中不使用Tab

Can';在pythonshell中不使用Tab,python,python-3.4,Python,Python 3.4,使用Python 3.4中的tab,我得到以下消息: Display all 184 possibilites? (y or n) 在Python3.4中是否有允许制表符的方法?这是在Python3.4的开发版本中引入的更改。这有点争议。您可能想表达您的意见。您可以使用空格代替制表符。在交互式解释器中,您不必键入4个空格。这里我使用两个空格来最小化击键次数 if 1 == 1: print('Hello Kitty') print('Oh no, only two spaces for

使用Python 3.4中的tab,我得到以下消息:

Display all 184 possibilites? (y or n)

在Python3.4中是否有允许制表符的方法?

这是在Python3.4的开发版本中引入的更改。这有点争议。您可能想表达您的意见。

您可以使用空格代替制表符。在交互式解释器中,您不必键入4个空格。这里我使用两个空格来最小化击键次数

if 1 == 1:
  print('Hello Kitty')
  print('Oh no, only two spaces for a new block')
要禁用
选项卡:完成
,可以执行以下操作

在主目录中创建或编辑名为
.pythonrc

在文件中添加以下行并保存

import readline  
readline.parse_and_bind("set disable-completion on")  
readline.parse_and_bind("tab: self-insert")
编辑
~/.bashrc
文件并添加以下行

export PYTHONSTARTUP=$HOME/.pythonrc
启动
python3
解释器<代码>选项卡应该像以前一样工作


或者,您可以将complete绑定到另一个键而不是tab键,这样您将获得众所周知的两全其美。

那么在windows中如何做到这一点呢?这是一个很大的麻烦

实际上,简单的解决方案是获得优秀的免费自动热键键盘程序员,并将其放入.ahk文件中;'))

选项卡:: 发送{Space}{Space}{Space}{Space}


(您的编辑器没有显示发送***在第二行的事实。)

要编辑此行为而不必为整个帐户设置环境变量,您可以在
~/.local/lib/python3.4/site packages/usercustomize.py
中进行初始化。正如@Haleemuli所写,禁用制表符完成的代码是:

import readline  
readline.parse_and_bind("set disable-completion on")  
readline.parse_and_bind("tab: self-insert")
在3.4和3.5的最新版本中,以及在可预见的将来,可能所有的未来版本中,这一点都应该得到修复(恢复)


您将看到tab complete的使用,这非常有用(通常)。尝试执行
导入系统;sys.
然后点击tab,您将在下面看到所有的自动完成选项
sys.
。您可以(而且我应该)使用空格而不是制表符进行缩进,然后两全其美。@JoshSmeaton如果您在终端中编写脚本,使用制表符要比使用空格快得多(而且更可靠)。我不喜欢在类中的方法中为if语句计算12个空格。新的建议是使用空格,但单个空格不能足够分隔块,4个空格太难输入。工作非常完美。拿回我的账单!如何在Windows中可靠地执行任何操作。