Форматирование функции list.sort в Python - PullRequest
0 голосов
/ 19 января 2020

У меня есть функция, в которой пользователь вводит 3 числа и возвращает среднее из этих 3 чисел, а также вторую строку, упорядочивая их в возрастающем порядке.

В настоящее время выглядит следующим образом:

num1 = input('Enter your first number: ')
num2 = input('Enter your second number: ')
num3 = input('Enter your third number: ')
sum = float(num1) + float(num2) + float(num3)
avg = round(sum/3, 2)
print('The average is ' + str(avg))
list = [num1, num2, num3]
list.sort()
print('The numbers in order are {}'.format(list))

это возвращает:

Enter your first number: 1
Enter your second number: 2
Enter your third number: 3
The average is 2.0
The numbers in order are ['1', '2', '3']

Тем не менее, я хочу, чтобы я вместо этого возвращал последнюю строку в следующем формате:

The numbers in order are 1, 2, 3

У кого-нибудь есть предложения по функциям, чтобы иметь возможность отформатировать строку, как мне нужно?

Ответы [ 3 ]

1 голос
/ 19 января 2020
print('The numbers in order are {}'.format(', '.join(list)))

Тем не менее, вы не должны скрывать встроенную функцию list и должны использовать другое имя для вашей переменной.

0 голосов
/ 19 января 2020
list.sort()
list= str(list)[1:-1] 
print('The numbers in order are {}'.format(list))
0 голосов
/ 19 января 2020

Попробуйте, используя Python f-Strings:

print(f'The numbers in order are {", ".join(list)}')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...