【发布时间】:2013-09-20 13:02:02
【问题描述】:
我是 Python 新手。 我有这种格式的输入
Harry is American Harry is American Harry is American Harry is American
Harry is American Harry is American Harry is American Harry is American
Harry is American Harry is American Harry is American Harry is American
我的输出应该是这样的
Harry, 1
is, 1
American, 1
Harry, 1
is, 1
American, 1
....
你能告诉我解决办法吗...
我正在尝试使用以下代码(我的代码甚至没有更接近解决方案)。
import sys
import re
inp = open('menu.bak', "r")
outp = open('word.txt',"w")
for line in inp:
counts = len(re.findall(r'\w+', line))
new = ''.join(line)
print(new[0])
print(new[1])
inp.close()
outp.close()
谢谢, 悟空S
【问题讨论】:
-
您的意思是您只想在输入的每个单词后打印“, 1”?为什么您使用
re并在不使用它们的情况下导入sys?你认为加入一个字符串会对你做什么? -
是的,每个单词都应该打印“1”,第二个字符串应该在下一行打印,然后是“1”。我用 re 来计算一行中的字符串数,并使用我认为我可以迭代我的 for 循环计数次数来打印计数记录的计数。假设我们在一个字符串中有 7 个单词,在输出中我应该看到 7 个单词打印在不同的行中。
-
我得到了输出。下面是我的代码
-
import re inp = open('menu.bak', "r") outp = open('word.txt',"w") for line in inp: for word in line.split( ): outp.write(str(word) + "," + "1" + '\n') inp.close() outp.close()
标签: python-3.x