如何在python中用字符串水平打印一个循环的结果?

问题描述 投票:0回答:1

我想用一个字符串和一个变量来水平打印一个循环的结果。

我的代码

total = 0
for i in range(2, 6):
    total += i
    print(i, end=' ', 'sum = {}'.format(total))

我想要的输出。

2 3 4 5 sum=14
python-3.x printing output concatenation
1个回答
2
投票

你需要把打印的 sum 圈外

total = 0
for i in range(2, 6):
    total += i
    print(i, end=' ')
print('sum = {}'.format(total))

产量

2 3 4 5 sum = 14

1
投票

存储范围,然后迭代,最后求和。

r = range(2, 6)

for i in r:
    print(i, end=" ")

print(f"sum = {sum(r)}")

将范围和格式化的字符串全部存储在一行中。

r = range(2, 6)

print(f'{" ".join([str(i) for i in r])} sum = {sum(r)}')

添加到循环中的字符串中,然后在最后打印。

r = range(2, 6)

s = ""
for i in r:
    s += f"{i} "

print(f"{s}sum = {sum(r)}")

1
投票

除了Leo提到的,你也可以尝试使用f'{}'方法来打印。我觉得这样更方便、更直观。

total = 0
for i in range(2,6):
    total +=i
    print(i, ' ', end='')
print(f'sum={total}', end='')

输出。

2  3  4  5  sum=14
© www.soinside.com 2019 - 2024. All rights reserved.