句子打印次数太多

时间:2017-12-19 22:06:23

标签: python string split

def main():
    print('Assignment #4-1, Ayub Hussein, ayub.hussein13@gmail.com')
    for line in fileinput.input():
        words = line.split()
        for i in range(0,len(words)):
            sys.stdout.write(words[i]+', ')
        sys.stdout.write('\n')

main()

输出: 你好,这个是\ n 你好,这个是\ n 你好,这是\ n

1 个答案:

答案 0 :(得分:1)

由于您按空格分割单词并使用逗号重新连接,因此您可以使用str.join来获取单个字符串,然后您可以立即写入,而不需要循环。

for line in fileinput.input():
    sys.stdout.write('{}\n'.format(', '.join(line.split())))

或者,

for line in fileinput.input():
    sys.stdout.write(', '.join(line.split()) + '\n')

这是一个小小的演示 -

In [15]: line = 'hello this is'

In [16]: ', '.join(line.split())
Out[16]: 'hello, this, is'