如何跳过一行(原始)输入,Python 3

时间:2016-06-27 19:17:48

标签: python python-3.x

我正在完成以下HackerRank challenge。我得到以下输入:

4
2 4 5 9
4
2 4 11 12

让我们说虽然我只想要第2和第4行输入(并假设所有输入都是这样的)。目前我正在实施一个陈腐的解决方案:

seta = set()
setb = set()
delete = input()
seta = input().split()
delete = input()
setb = input().split()

我稍后在程序中不使用delete。是否有更好,更准确和简洁的前进方式?

1 个答案:

答案 0 :(得分:1)

循环遍历sys.stdin object;它是一个常规文件并支持迭代。您可以使用itertools.islice() object跳过每隔一行:

import sys
from itertools import islice

second_lines = islice(sys.stdin, None, None, 2)
seta = set(map(int, next(second_lines).split()))
setb = set(map(int, next(second_lines).split()))