我是一个完全盲目的程序员,想学习 Python。不幸的是,代码块用不同级别的缩进表示这一事实是一个主要的绊脚石。我想知道是否有任何可用的工具允许我使用大括号或其他代码块分隔符编写代码,然后将该格式转换为 Python 解释器可以使用的正确缩进表示?
最佳答案
有一个解决您的问题的解决方案,它与 python 本身一起分发。 pindent.py
,它位于 windows 安装的 Tools\Scripts 目录中(我的路径是 C:\Python25\Tools\Scripts),看起来你必须 grab it from svn.python.org如果您在 Linux 或 OSX 上运行。
在关闭 block 时添加注释,或者如果添加注释,可以正确缩进代码。下面是 pindent 使用命令输出的代码示例:
pindent.py -c myfile.py
def foobar(a, b):
if a == b:
a = a+1
elif a < b:
b = b-1
if b > a: a = a-1
# end if
else:
print 'oops!'
# end if
# end def foobar
原来的 myfile.py
是:
def foobar(a, b):
if a == b:
a = a+1
elif a < b:
b = b-1
if b > a: a = a-1
else:
print 'oops!'
您也可以使用 pindent.py -r
根据注释插入正确的缩进(详细信息请阅读 pindent.py 的标题),这应该让您在 python 中编码而无需担心缩进。
例如,运行 pindent.py -r myfile.py
会将 myfile.py
中的以下代码转换为与由上面的 pindent.py -c
示例生成:
def foobar(a, b):
if a == b:
a = a+1
elif a < b:
b = b-1
if b > a: a = a-1
# end if
else:
print 'oops!'
# end if
# end def foobar
我有兴趣了解您最终使用的解决方案,如果您需要任何进一步的帮助,请在这篇文章中发表评论,我会尽力提供帮助。
关于python - 有没有办法将 Python 代码中的缩进转换为大括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/118643/