2016-03-11 3 views
0

То, что я пытаюсь сделать, это избавиться от знака + после конечного значения от пользовательских входов.Остановка цикла for в Python

count = 0 
total = 0 

# Input 
start = int(float(input("1 of 2 - Enter Starting Loop Value: "))) 
ending = int(float(input("2 of 2 - Enter Ending Loop Value: "))) 

# for loop 
for n in range(start, ending+1, 1): 
    total = total + n 
    count = count + 1 
    print(n, "+ ", end="") 
print("=", total) 

print("\nLoop ran", count, "Times") 

print("\n\n") 

Выходной сигнал будет выглядеть ..

1 of 2 - Enter Starting Loop Value: 5 
2 of 2 - Enter Ending Loop Value: 11 
5 + 6 + 7 + 8 + 9 + 10 + 11 + = 56 

Loop ran 7 Times 

Так что я хотел бы избавиться от + после 11.

ответ

0

Вы можете проверить, чтобы убедиться, что вы только печать когда это не последний номер для печати, вот так.

for n in range(start, ending+1, 1): 
    total = total + n 
    count = count + 1 
    if n != ending: 
     print(n, "+ ", end="") 
    else: 
     print(n + " ") 
0

Использование join:

nums = list(range(start,ending+1)) 
total = sum(nums) 
strsum = ' + '.join(str(i) for i in nums) 
print('{} = {}'.format(strsum,total)) 
Смежные вопросы