问题如下:
对于这个程序,输入的第一行是一个整数宽度。然后,有几行文字;“END”行表示文本的结束。对于每一行文本,您需要打印出它的居中版本,通过在左右添加句点 .. 来使每行文本的总长度为宽度。(所有输入行的长度最多为宽度。)居中意味着如果可能,添加到左侧和添加到右侧的句点数应该相等;如果需要,我们允许左侧比右侧多一个句点。例如,对于输入
13
Text
in
the
middle!
END
正确的输出是
.....Text....
......in.....
.....the.....
...middle!...
给出的提示是:
对于 L 的输入行长度,您应该在右侧添加 (width-L)\\2 个句点
到目前为止,这是我的代码:
width = int(input())
s1 = input()
periods_remain = width - len(s1)
L = periods_remain
periods_rtside = (width-L)//2
periods_leftside = width - periods_rtside
periods_rt_str = '.' * periods_rtside
periods_left_str = '.' * periods_leftside
line1 = periods_left_str + s1 + periods_rt_str
我的 line1 结果看起来像“...........Text..”而不是......Text....
我的问题似乎是 L。我不确定如何定义 L。谢谢!