句子打印次数太多

问题描述 投票:1回答:1
def main():
    print('Assignment #4-1, Ayub Hussein, [email protected]')
    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()

OUTPUT:你好,这个是\ n你好,这个是\ n你好,这个是\ n

python string split
1个回答
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'
© www.soinside.com 2019 - 2024. All rights reserved.