我不是在询问Options > Configure IDLE > Fonts/Tabs > Indentation Width
并将其设置为2
。这仅在文件中设置缩进宽度,而不是交互式shell的缩进宽度。
我需要更改哪些Python IDLE文件才能在交互式shell中获得2个空格间隔?
我喜欢使用2个空格而不是4个代码进行编码,因此在将外壳转移到文件中时,没有交互式shell也会以相同的间距缩进,从而减慢了我的速度。
答案 0 :(得分:1)
有解决方案! * 1
转到idlelib(/ lib / idlelib /)* 2
打开“ pyshell.py”
转到class PyShell
,__init__
共有3行
self.usetabs = True
# indentwidth must be 8 when using tabs. See note in EditorWindow:
self.indentwidth = 8
只需将它们更改为
self.usetabs = False
# indentwidth must be 8 when using tabs. See note in EditorWindow:
self.indentwidth = 4 # you decide, lot of people prefer 2
这将导致外观怪异:
>>> def f(x): # calculate x*abs(x)
if x > 0: # it doesn't look it, but this is indented once
return x*x # and this twice
else:
return -x*x
但是我认为它比8spaces-tab缩进更好
* 1我正在Windows 10上使用python 3.8,但这可能在其他地方工作
* 2取决于python的安装位置
第1步:找到python(对我来说是“ C:\ Programs \ Python 3.8”)
步骤2:从那里转到/ lib / idlelib /
答案 1 :(得分:0)
不,不是现在。
Shell目前使用标签缩进,标签在tk中固定为8'空格'。我相信至少部分原因是,尽管>>>
提示,后续行仍然在视觉上缩进。
我也不喜欢这样。在将来,我想将提示移动到侧边栏中,以便输入的代码在编辑器中开始向左冲洗,并且可以使用与编辑器中相同的用户设置缩进。