#python
Вопрос:
По сути, я хочу использовать функцию input() для ввода пользователем нескольких аргументов в этой функции и возврата значения
def object_distance(f,di):
do = 1/((1/f)-(1/di))
return do
odistance = input(object_distance())
print("The object distance is: {0:3.1f} cm".format(odistance))
Комментарии:
1. Не могли бы вы привести пример ввода-вывода?
Ответ №1:
вы можете вызывать ввод несколько раз.
f_input = input('Enter f:')
di_input = input('Enter di:')
odistance = object_distance(f_input, di_input)
Ответ №2:
Вы можете ввести 2 значения одно за другим. Я также приводил входные данные к int при вызове функции.
def object_distance(f, di):
do = 1/((1/f)-(1/di))
return do
f, di = input ('Input 2 values separated by a space').split()
odistance = object_distance(int(f) , int(di))
print("The object distance is: {0:3.1f} cm".format(odistance))
Выход
Input 2 values separated by a space
7 9
The object distance is: 31.5 cm```
Ответ №3:
Сначала вы должны получить входные данные, а затем вызвать функцию.
a1 = input("Enter f: ")
a2 = input("Enter di: ")
# TODO Convert the strings a1 and a2 to values of the appropriate
# type for object_distance.
distance = object_distance(a1, a2)
Аргумент to input
-это просто строка для отображения в качестве запроса, а не функция (и, конечно, не вызов этой функции), с которой она «работает», чтобы определить, сколько аргументов необходимо.