当我在python中编写代码时,突然想在我已编写的代码前添加一个新块......完整代码的缩进会受到影响.. 移动到每一行并更改缩进是一个非常繁琐的过程......有没有办法做自动缩进或什么...
例如:
def somefunction:
x =5
return x
如果我想添加一个控制块
例如:
def somefunction:
if True:
x =5
return x
return 0
添加控制块的这个小改动花了很多标签工作....
是否可以轻松实现这一目标?
答案 0 :(得分:5)
我不知道每个人都会来自哪个古怪的行星,但是大多数编辑器都没有追溯到石器时代,缩进代码块通常只需要选择一个文本块并按Tab键。另一方面,Shift + Tab通常是UNdents the block。
适用于Visual Studio,Notepad2,e,Textmate,Slickedit,#Develop等等。
如果你没有做大型多文件项目,我强烈推荐Notepad2。它是一款非常轻便,免费,易于使用的记事本替代品,具有足够的以代码为中心的功能(行号,缩进指南,代码突出显示等)。
答案 1 :(得分:3)
在空闲编辑器中,您只需选择要缩进的行,然后按Tab键。
我应该注意,这实际上并没有在源中插入任何标签,只是空格。
答案 2 :(得分:2)
在IDLE中我只使用ctrl +]和ctrl + [在代码块上。
答案 3 :(得分:2)
使用emacs有Python模式。在该模式中,您将突出显示并执行:
ctrl-c >
ctrl-c <
答案 4 :(得分:1)
使用VI并且永远不要再编程。 :^)
答案 5 :(得分:1)
[搞笑;-)]老兄,我告诉过你,如果你有这个新的键盘模型,你需要一个开发人员 Pythonic keyboard http://img22.imageshack.us/img22/7318/pythonkeyboard.jpg
答案 6 :(得分:1)
Vim:切换到可视模式,选择块,使用&gt;缩进(或&lt; to unindent)。
答案 7 :(得分:1)
如果您使用的是vim,则专门为此设置一个插件:Python_fn.vim
它提供了有用的python函数(和菜单等价物):
]t -- Jump to beginning of block
]e -- Jump to end of block
]v -- Select (Visual Line Mode) block
]< -- Shift block to left
]> -- Shift block to right
]# -- Comment selection
]u -- Uncomment selection
]c -- Select current/previous class
]d -- Select current/previous function
]<up> -- Jump to previous line with the same/lower indentation
]<down> -- Jump to next line with the same/lower indentation
答案 8 :(得分:0)
在TextMate中,只需突出显示要缩进和使用的行:
⌘+ [
或
⌘+]
以适当的方向移动文本。
答案 9 :(得分:0)
你可以在http://pydev.sourceforge.net/找到的PyDev有一个“代码格式化程序”。它还具有自动添加功能。它是Eclipse的一个插件,也可以免费用于Mac。
如果您熟悉或投入Vim时间,则另一个选项是http://code.google.com/p/macvim/,Vim具有许多不仅适用于Python的自动功能。
但是,不要忘记,在Python中,缩进会改变程序的含义,这与C系列语言不同。例如,对于C或C#,实用程序可以根据“{”和“}”符号来美化代码。但是,在Python中,由于程序无法格式化以下内容,因此模糊不清:
#Say we wrote the following and expect it to be formatted.
a = 1
for i in range(5):
print i
a = a + i
print a
你期望它是
吗?a = 1
for i in range(5):
print i
a = a + i
print a #Will print 5
或
a = 1
for i in range(5):
print i
a = a + i
print a #Will print 11
这是两个不同的片段。
答案 10 :(得分:0)
在Komodo中,Tab和Shift选项卡都按预期工作,以缩进和取消大块代码。
答案 11 :(得分:0)
在vim中,您可以输入:
>>
缩进一行。如果输入:
5>>
缩进光标处和光标下方的5行。 5<<
正好相反。