如何使用 python 在循环输出之间删除 space?

How do I delete space between loop output using python?

def print_numbers2():
    for a in range(1,6):
        c = 5-a
        print("." * c , str(a) *a)

我的输出是

.. 1
... 22
.. 333
。 4444
55555

但我期望得到的输出在点 (.) 和数字之间没有 space。点和数字之间有space。

我该如何解决这个问题?

在打印中使用 + 而不是 ,。

试试这个:

def print_numbers2():
    for a in range(1,6):
        c = 5-a
        print("." * c +  str(a) *a)

输出 :

>>> print_numbers2()
....1
...22
..333
.4444
55555

您需要将输出作为字符串加入,而不是作为两个不同的字符串并排打印。

只需将 sep 设置为空字符串:

def print_numbers2():
    for a in range(1,6):
        c = 5-a
        print("." * c , str(a) *a, sep='')

试试这个 -

def print_numbers2():
    for a in range(1,6):
        c = 5-a
        print("."*c,str(a)*a,sep='')
print_numbers2()
....1
...22
..333
.4444
55555

对我有用。

已经提供了很多方法。

再使用 fstrings :

def print_numbers2():
    for a in range(1, 6):
        c = 5-a
        print(f"{'.' * c}{str(a) * a}")

您只需在打印语句中用加号替换逗号即可。 像这样,

print("." * c + str(a) *a)