Python用循环输出9的乘法表 无法横向空格分隔结果如何解决
问题解决
你的代码存在两处核心问题,调整后即可实现需求效果:
- 0值判断逻辑位置错误:当输入N为0时,
range(1, N+1)等价于range(1,1)属于空区间,循环不会执行,因此写在循环内部的0值判断永远不会触发,需要把这个判断移到循环外层。 - 打印换行问题:默认
print()函数会在输出内容末尾追加换行符,你需要给print()传入end=' '参数替换默认的换行符,即可实现同一行输出。如果需要避免末尾多余空格,更推荐用列表存储结果后拼接输出。
修正代码(无末尾多余空格,符合输出规范)
N = int(input()) multiplier = 9 if N == 0: print("NULL") else: result_list = [str(i * multiplier) for i in range(1, N + 1)] print(' '.join(result_list))
测试效果
输入值为3时,输出结果为9 18 27,完全匹配示例要求。
内容的提问来源于stack exchange,提问作者Varun Athithiya Shenbagaraj
相关产品推荐
相关产品推荐

