这是一个问题,我应该得到一个门垫设计,如body所示。我无法为每行都"-"

  • 本文关键字:一个 我应该得到 问题 body 所示 python
  • 更新时间 :
  • 英文 :


所以我实际上应该得到如下设计:

------------.|.------------
---------.|..|..|.---------
------.|..|..|..|..|.------
---.|..|..|..|..|..|..|.---
----------WELCOME----------
---.|..|..|..|..|..|..|.---
------.|..|..|..|..|.------
---------.|..|..|.---------
------------.|.------------

其为CCD_ 1垫尺寸。其中N是奇数并且M是CCD_ 2。为此我写了这样的文章:

N,M=map(int,input().split())
for i in range(1,N,2):
pattern=".|."*i
var=pattern.center((m-len(pattern))/2,"-")
print(var)

并且当我执行这个时-"每一行。我想知道我哪里做错了。我知道除此之外还有很多事情要做,但有人能帮我吗。

尝试:

var=pattern.center(M,"-")

假设您的m实际上是M(第二个输入数字(。

因此,对于输入";9 27〃;生产:

------------.|.------------
---------.|..|..|.---------
------.|..|..|..|..|.------
---.|..|..|..|..|..|..|.---

我想你可以完成。

center((方法将使用指定的字符(默认为空格(作为填充字符。

因此语法为:

string.center(length, character) 

结果是一个长度为"length"的字符串,其中"character"用于在居中字符串前后填充。

所以完整的代码可能是:

N,M=map(int,input().split())
for i in range(1,N,2):
pattern=".|."*i
var=pattern.center(M,"-")
print(var)
var="Welcome".center(M,"-");
print(var);
for i in range(N,1,-2):
pattern=".|."*(i-2)
var=pattern.center(M,"-")
print(var)

以下是一些简单的测试,您可以在python沙盒或IDE中输入:

print("123".center(20,"="));
print("123".center(3,"="));
print("123".center(4,"="));
print("123".center(5,"="));
print("1234".center(0,"="));

产品:

========123=========
123
123=
=123=
1234

实验!

注1:既然M必须总是N*3,那么为什么要输入它并计算它。既然它是输入的,那么你必须考虑如果M != N*3会发生什么。

相关内容

最新更新