我是Python的初学者。
使用嵌套循环打印的图案:
1@
1#3#
1@3@5@
1#3#5#7#
(For循环优先)
谢谢.
这是我尝试的代码:
n = int(input("Enter no:"))
for i in range(1, n + 1):
for j in range(1, 2 * i):
if j % 2 == 0:
print("#", end="")
else:
print(str(j), end="@")
print()
输出量:
Enter no:7
1@
1@#3@
1@#3@#5@
1@#3@#5@#7@
1@#3@#5@#7@#9@
1@#3@#5@#7@#9@#11@
1@#3@#5@#7@#9@#11@#13@
“@”似乎每行都有,而“#”不是每第二行都有
2条答案
按热度按时间6gpjuf901#
正如@Scott Hunter在评论中指出的那样,偶数行和奇数行之间的差异应该基于
i
的值,而不是j
。下面是你的代码,上面提到的修改和更新的打印:
这是我在运行代码时得到的输出,输入值为
7
:oknwwptz2#
你没有理由在循环中保留一个
if
条件:你可以简单地使用一个索引的字符数组:或者更短: