【发布时间】:2014-01-18 08:32:30
【问题描述】:
我有一句话“快狐跳过懒狗”,我统计了这句话中每个单词出现的次数。输出应该是这样的:
brown:1,dog:1,fox:1,jumps:1,lazy:1,over:1,quick:1,the:2
此输出中的字符之间不应有空格,单词/数字之间应有逗号。 我的程序的输出如下所示:
,brown:1,dog:1,fox:1,jumps:1,lazy:1,over:1,quick:1,the:2
我发现'brown'之前有一个逗号。有没有更简单的方法来打印这个?
filename = os.path.basename(path)
with open(filename, 'r+') as f:
fline = f.read()
fwords = fline.split()
allwords = [word.lower() for word in fwords]
sortwords = list(set(allwords))
r = sorted(sortwords, key=str.lower)
finalwords = ','.join(r)
sys.stdout.write(str(finalwords))
print '\n'
countlist = {}
for word in allwords:
try: countlist[word] += 1
except KeyError: countlist[word] = 1
for c,num in sorted(countlist.items()):
sys.stdout.write(",{:}:{:}".format(c, num))
【问题讨论】:
标签: python