题目描述
 根据输入的四个参数:a,b,c,f 参数,画出对应的矩形。
 前两个参数a,b 为整数,依次代表矩形的高和宽;
 第三个参数c 是一个字符,表示用来填充的矩形符号;
 第四个参数f 为整数,0 代表空心,否则代表实心。
 具体例子请见样例。
 输入
 第一行:a,b,c,f。
 输出
 一个矩形。
 样例输入1
 7 7 @ 0
样例输出1
 @@@@@@@
 @                  @
 @                  @
 @                  @
 @                  @
 @                  @
 @@@@@@@
提示
 3≤a≤100。
 5≤b≤100。
 c 是一个可见的字符。
 0≤f≤100。
 来源/分类
 每日一题 循环结构 
完整代码如下:
 a,b,c,d=map(str,input().split())
 if int(d)==0:
     for i in range(int(b)):
         print(c,end="")
     space=' '
     e=int(b)-2
     f=int(b)-4
     print('\n{}{}{}'.format(c,space*e,c))
     for j in range(int(a)-3):
         print(c,space*f,c)
     for k in range(int(b)):
         print(c,end="")
 else:
     for l in range(int(b)):
         print(c,end="")
     space=c
     print('\n{}'.format(space*int(b)))
     for m in range(int(a)-3):
         print(space*int(b))
     for n in range(int(b)):
         print(c,end="")
代码解释:
 ”a,b,c,d=map(str,input().split()) “,让用户输入a,b,c,d四个参数,并将其转换为字符串。
 “if int(d)==0:
     for i in range(int(b)):
         print(c,end="")
     space=' '
     e=int(b)-2
     f=int(b)-4
     print('\n{}{}{}'.format(c,space*e,c))
     for j in range(int(a)-3):
         print(c,space*f,c)
     for k in range(int(b)):
         print(c,end="") “,判断d是否为0,如果是,则先打印一行长度为b,单元为c的字符串。然后换行,打印一个字符c,空e个空格(设置space=’ ‘,space*1即为一个空格),再接着打印一一个字符串(这样第二行首尾都为字符c,而中间为空格)。
 循环第二行的格式a-3次。循环结束后,打印一行与第一行相同的字符串,即为最后一行。
 ”else:
     for l in range(int(b)):
         print(c,end="")
     space=c
     print('\n{}'.format(space*int(b)))
     for m in range(int(a)-3):
         print(space*int(b))
     for n in range(int(b)):
         print(c,end="") “,如果d不为0,则先打印一行长度为b,单元为c的字符串。然后换行,打印一行与第一行相同的字符串。循环第二行的格式a-3次。循环结束后,打印一行与第一行相同的字符串,即为最后一行。
运行效果展示:

 
 
(声明:以上内容均为原创)