Как читать регулярные отрицательные целые числа с интервалом ввода в python3? - PullRequest
0 голосов
/ 12 мая 2019

Как читать и отделять регулярные отрицательные целые числа с интервалом от input () в python 3?Я пришел к этому, когда решал задачу CodeChef.com https://www.codechef.com/NACA2019/problems/STGAME

. Я подумал о своем обычном способе использования input (). Split (), но это слишком отдельно отделяет отрицательные знаки, и это приведет кцелые числа положительные, которые я тоже не хочу.

Это было бы проще на языке Си из-за scanf ()

strArr = input().split() #My usual way of splitting the string input
list cardsArr
for j in strArr:
    cardsArr.append(int(j)) # usual way to convert the list to integers
#I want to know how to read it.

INPUT 1 2 3 4 5 -1 -2 -3 -4 -5

ОЖИДАЕМЫЕ РЕЗУЛЬТАТЫ [1,2,3,4,5] [-1, -2, -3, -4, -5]

АКТУАЛЬНЫЕ РЕЗУЛЬТАТЫ [1, 2,3,4,5] [-, 1, -, 2, -, 3, -, 4, -, 5]

Ответы [ 2 ]

0 голосов
/ 12 мая 2019

с использованием filter

a=list(map(int,input().strip().split())) # '1 2 3 4 5 -1 -2 -3 -4 -5'
c=list(filter(lambda x:x>=0,a))
b=list(filter(lambda x:x<0,a))
print(c,b)

# output  [1,2,3,4,5],[-1,-2,-3,-4,-5]
0 голосов
/ 12 мая 2019

Используйте input().split(" "), чтобы разделить каждое пространство.

...