簡體   English   中英

如何刪除python中的空行

[英]How to remove a blank line in python

這是我的時間表代碼:

Y=int(input(""))
X=int(input(""))

for i in range(1,Y+1):
    print("")
    for j in range(1,X+1):
        print("{:>4}".format(str(i*j)),end="")

這是 X=3 和 Y=2 時的輸出:


   1   2
   2   4
   3   6

輸出是正確的,但頂部有一個額外的間距,我需要去掉。

   1   2
   2   4
   3   6

這就是我想得到的。 任何人都可以幫助解決這個問題。

你需要在最后移動空print ,不需要""進去,也不需要強制轉換為str

for i in range(1,Y+1):
    for j in range(1,X+1):
        print("{:>4}".format(i*j),end="")
    print()

您還可以連接內部循環,例如

for i in range(1,Y+1):
    val = ""
    for j in range(1,X+1):
         val+= "{:>4}".format(i*j)
    print(val)

或更短

for i in range(1, Y + 1):
    print("".join(map(lambda j: "{:>4}".format(i * j), range(1, X + 1))))

試試這個:

Y = int(input(""))
X = int(input(""))
for i in range(1, Y + 1):
    if i > 1:
        print()
    for j in range(1, X + 1):
        print("{:>4}".format(str(i * j)), end="")

或者

    Y = int(input(""))
    X = int(input(""))
    for i in range(1, Y + 1):
        for j in range(1, X + 1):
            print("{:>4}".format(str(i * j)), end="")
        print()

print("")行移到底部,但保持相同的縮進:

y = int(input("y: "))
x = int(input("x: "))

for i in range(1, y+1):
    for j in range(1, x+1):
        print("{:>4}".format(i*j), end="")
    print()
for i in range(1,Y+1):
    for j in range(1,X+1):
        print("{:>4}".format(str(i*j)),end="")
    print("")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM