Эквивалент java.util.Scanner в Python - PullRequest
0 голосов
/ 17 февраля 2019

В Java можно написать что-то вроде этого:

Scanner scan = new Scanner(System.in);
x = scan.nextInt();
y = scan.nextDouble();

и т. Д.

Что эквивалентно этому в Python 3?Входные данные представляют собой список целых чисел, разделенных пробелами, и я не хочу использовать метод strip ().

Ответы [ 2 ]

0 голосов
/ 17 февраля 2019

После того, как вы получили свой ввод, используя функцию «ввода», вы можете сделать:

my_input = input("Enter your input:") 
# my_input = "1, 2" 
def generate_inputs(my_input):
     yield from (i for i in my_input.split())

inputs = generate_inputs(my_input)
x = int(next(inputs))
y = int(next(inputs)) # you could also cast to float if you want 

Если вы хотите меньше кода:

scan = (int(i) for i in input().split())
x = next(scan)
y = next(scan)
0 голосов
/ 17 февраля 2019

Используйте метод input():

x = int(input())
y = float(input())

Если вы хотите взять список целых чисел, разделенных пробелами, и хранить их отдельно:

`input: 1 2 3 4`
ints = [int(x) for x in input().split()]
print(ints)
[1, 2, 3, 4]
...