Элементы списка могут вводиться по одному в строке, в этом случае строку можно считать функцией input(). После этого можно использовать метод строки split, возвращающий список строк, разрезав исходную строку на части по пробелам. Пример:
A = input().split()
Если при запуске этой программы ввести строку 1 2 3, то список A будет равен ['1', '2', '3']. Обратите внимание, что список будет состоять из строк, а не из чисел. Если хочется получить список именно из чисел, то можно затем элементы списка по одному преобразовать в числа:
for i in range(len(A)):
A[i] = int(A[i])
Используя функции языка map и list то же самое можно сделать в одну строку:
A = list(map(int, input().split()))
Объяснений, как работает этот код, пока не будет. Если нужно считать список действительных чисел, то нужно заменить тип int на тип float.
У метода split есть необязательный параметр, который определяет, какая строка будет использоваться в качестве разделителя между элементами списка. Например, метод split('.') вернет список, полученный разрезанием исходной строки по символам '.'.
Используя “обратные” методы можно вывести список при однострочной команды. Для этого используется метод строки join. У этого метода один параметр: список строк. В результате получается строка, полученная соединением элементов списка (которые переданы в качестве параметра) в одну строку, при этом между элементами списка вставляется разделитель, равный той строке, к которой применяется метод. Например программа
A = ['red', 'green', 'blue']
print(' '.join(A))
print(''.join(A))
print('***'.join(A))
выведет строки 'red green blue', redgreenblue и red***green***blue.
Если же список состоит из чисел, то придется использовать еще и функцию map. То есть вывести элементы списка чисел, разделяя их пробелами, можно так:
print(' '.join(map(str, A)))
Объяснение:
⚡
Поделитесь своими знаниями, ответьте на вопрос:
Заданы площади круга и квадрата. определить поместится ли квадрат к круге. если поместится, вывести yes, в противном случае no. формат ввода : два вещественных числа (первое - площадь круга, второе - площадь квадрата), записанных в отдельных строках. проверка : ввод 50 50 вывод no ввод 314 72 вывод yes
def solve(x, op, y):
if str(op) == '+':
try:
print(float(x) + float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '-':
try:
print(float(x) - float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '*':
try:
print(float(x) * float(y))
except ValueError:
print('одно из значений не число')
elif str(op) == '/':
try:
print(float(x) / float(y))
except ZeroDivisionError:
print('на ноль делить нельзя')
except ValueError:
print('одно из значений не число')
return 0
elif str(op) == '//':
try:
print(float(x) // float(y))
except ZeroDivisionError:
print('на ноль делить нельзя')
except ValueError:
print('одно из значений не число')
return 0
elif str(op) == '^':
try:
print(float(x) ** float(y))
except ValueError:
print('одно из значений не число')
else:
print('error')
return 0
while True:
num1, op, num2 = input().split()
solve(num1, op, num2)
Объяснение:
Данные вводятся через пробел, ex:
Ввод: 2 + 2
Вывод: 4