pycharm自动将制表符转换为空格


110

我正在使用pycharm IDE进行python开发,它对Django代码非常完美,因此怀疑将制表符转换为空格是默认行为,但是在python IDE中到处都有错误,因为它无法自动将制表符转换为空格,有没有一种方法可以实现这个。

Answers:


124

更改代码样式以使用空格而不是制表符:

空格

然后在项目视图中选择要转换的文件夹并使用Code| 重新格式化代码


30
这是我的默认设置,但是似乎IDE中有一些错误无法正常工作,所以我所做的是编辑>转换缩进>空格
Vaibhav Mishra,2012年

1
Python应该具有4个空格的缩进。
2015年

2
这个答案对我不起作用。不确定为什么接受它,因为它对OP也不起作用。后续问题:stackoverflow.com/questions/47102828/...
斯特凡Monov

3
在我的情况下,我不得不在“编辑器”->“代码样式”->“启用编辑器配置支持”下禁用“编辑器配置”,因为我在不知不觉中拥有一个~/.editorconfig覆盖PyCharm设置的文件。
好战的黑猩猩

1
您可以通过取消选中常规“代码样式”下的“检测并使用现有文件缩进进行编辑”来强制它甚至对现有文件也使用空格。之后,在现有文件上键入tab将立即插入空格而不是tab。
大卫·金霍恩

64

对于选择,还可以使用“到空格”功能转换选择。我通常只通过ctrl-shift-A使用它,然后从那里找到“到空格”。


似乎无法一次处理多个文件。单独为每个文件执行此操作有点麻烦...
CGFoX

先生,您是生活的鉴赏家吗?
Juggernaut

61

这只会转换选项卡,而不会更改其他任何内容:

Edit -> Convert Indents -> To Spaces

1
嘿,这应该被接受了。它在本地工作。例如,对于需要使用制表符作为缩进的Makefile很有用
swdev

9

CTRL + SHIFT + A =>打开弹出窗口来选择选项,选择为空格到所有标签转换为空间,或以标签的所有空间转换为制表。


制表符转换为制表符?是错字吗?
Anvesh Yalamarthy

7

PyCharm 2019.1

如果要更改常规设置:

开放的喜好,在MacOS上;或在Windows / Linux的Ctrl+ Alt+S

转到“编辑器”->“代码样式”->“ Python”,如果要遵循PEP-8,请选择“ 制表符大小:4”,“ 缩进:4 ”和“ 继续缩进:8”,如下所示:

在此处输入图片说明

应用更改,然后单击“确定”。

如果要仅将更改应用于当前文件

选项1:您可以在导航栏中选择:编辑->转换缩进->转换为空格。(见下图)

在此处输入图片说明

选项2:您可以通过在macOS或Windows / Linux 上运行“ 查找操作”快捷方式来执行“到空间”操作。然后键入“ To Spaces”,然后如下图所示运行操作。ActrlA

在此处输入图片说明



0

对我来说,它有一个名为〜/ .editorconfig的文件,它将覆盖我的标签设置。我删除了它(肯定有一天会再次咬我),但是它解决了我的pycharm问题

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.