Python如何修改代码实现输入整数输出*组成的正方形
问题原因
你当前写的代码只有一层循环,只会在同一行连续输出val个*,没有按行遍历、也没有在每行结束后换行,所以打不出多行的正方形。
修改代码
要输出边长为val的*实心正方形,需要输出val行,每行都有val个*,有两种常见写法:
- 保留你原来的单层打印逻辑,再加一层外层循环控制行数,每行打完加换行:
val = int(input()) for x in range(val): for y in range(val): print('*', end='') print()
- 利用Python字符串乘法直接生成每行的内容,写法更简洁:
val = int(input()) for _ in range(val): print('*' * val)
输入值为5时,两段代码的输出都是5行、每行5个*的正方形,完全符合预期效果。
内容的提问来源于stack exchange,提问作者Viraj Rathnayake
相关产品推荐
相关产品推荐

