Vim 重排 python 代码 错误

Vim 重排 python 代码 错误

在使用Vim读代码时,用 gg=VG 重排代码很有用。可是不知道为甚对python代码,重排出错。需要设置什么,还是需要插件?

以以下代码为例:

[Copy to clipboard] [ - ]
CODE:
# wordfreq.py

import string

def compareItems((w1,c1), (w2,c2)):
if c1 > c2:
return - 1
elif c1 == c2:
return cmp(w1, w2)
else:
return 1

def main():
print "This program analyzes word frequency in a file"
print "and prints a report on the n most frequent words.\n"

# get the sequence of words from the file
fname = raw_input("File to analyze: ")
text = open(fname,'r').read()
text = string.lower(text)
for ch in """!"#$%&()*+,-./:;<=>?@[\\]?_'`{|}?""":
text = string.replace(text, ch,' ')
words = string.split(text)

# construct a dictionary of word counts
counts = {}
for w in words:
try:
        counts[w] = counts[w] + 1
except KeyError:
        counts[w] = 1

# output analysis of n most frequent words.
n = input("Output analysis of how many words? ")
items =counts.items()
items.sort(compareItems)
for i in range(n):
print "%-10s%5d" % items[i]

if __name__ == '__main__': main()



QUOTE:
原帖由 23号 于 2008-10-30 20:45 发表
试试这个:http://pypi.python.org/pypi/PythonTidy/1.11

多谢!

不清楚该如何使用,还望指教。

虽然不知道怎么用,却让我看到了Python的强大!


QUOTE:
原帖由 nickleeh 于 2008-10-30 22:25 发表

不清楚该如何使用,还望指教。

虽然不知道怎么用,却让我看到了Python的强大!

这两句怎么听着这么搞笑
得出Python强大的因果关系在哪呢?
用法好好看看那个网页,不是写得很清楚么


QUOTE:
原帖由 nbug 于 2008-10-31 19:58 发表


这两句怎么听着这么搞笑
得出Python强大的因果关系在哪呢?
用法好好看看那个网页,不是写得很清楚么

我得出Python的强大,是因为真的可以用python写个脚本,来实现python代码的重排。

不清楚是什么原因,我运行那个脚本,总是出错。