输出结果为什么会空这么多

怎么回事啊!输出结果 为什么会空出这么多啊!求解释下
j = 0
for i in range(100,1000):
if i % 3 == 0 and '5' in str(i):
print(i,end=" ")
j += 1
if j % 10 == 0:
print("")

105 135 150 153 156 159 165 195 225 252

255 258 285 315 345 351 354 357 375 405

435 450 453 456 459 465 495 501 504 507

510 513 516 519 522 525 528 531 534 537

540 543 546 549 552 555 558 561 564 567

570 573 576 579 582 585 588 591 594 597

615 645 651 654 657 675 705 735 750 753

756 759 765 795 825 852 855 858 885 915

945 951 954 957 975
Process finished with exit code 0

img

img

应该是打印换行的缩进不对,把打印换行那个if语句放到前一个if判断里即可,修改如下:


j = 0
for i in range(100,1000):
    if i % 3 == 0 and '5' in str(i):
        print(i,end=" ")
        j += 1
        if j % 10 == 0:  #当数字是能被3整除,并且包含数字5时,每隔10个数字换行
            print(" ")

img