我正在试图弄清楚如何将我的整个方块变成空心方块。到目前为止,我尝试过的一些事情并不是很成功,因为我最终得到了一个相当扭曲的三角形!
这是我目前要组建广场的代码..
size = 5
for i in range(size):
print ('*' * size)
运行时,这就是结果..
*****
*****
*****
*****
*****
当if
大于3时,是否需要运行while
或size
语句来指定条件?
答案 0 :(得分:8)
我认为这就是你想要做的事情:
m, n = 10, 10
for i in range(m):
for j in range(n):
print('*' if i in [0, n-1] or j in [0, m-1] else ' ', end='')
print()
输出:
**********
* *
* *
* *
* *
* *
* *
* *
* *
**********
您也可以这样绘制三角形:
m, n = 10, 10
for i in range(m):
for j in range(n):
print('*' if i in [j, m-1] or j == 0 else ' ', end='')
print()
输出:
*
**
* *
* *
* *
* *
* *
* *
* *
**********
答案 1 :(得分:2)
您可以打印出一个'*'
,然后打印size-2
个空格,然后打印一个'*'
。这将给你“空心”部分。第一行和最后一行需要全长:
size = 5
inner_size = size - 2
print ('*' * size)
for i in range(inner_size):
print ('*' + ' ' * inner_size + '*')
print ('*' * size)
答案 2 :(得分:2)
这是我用输入大小N绘制正方形的python代码。
n = int(input())
print('*' * n)
for i in range(n-2):
print ('*' + ' ' * (n-2) + '*')
print('*' * n)
基本上,第一个和最后一个print('*' * n)
绘制顶部和底部线,而for循环打印身体。
输出示例:N = 3
***
* *
***
输出示例:N = 5
*****
* *
* *
* *
*****
答案 3 :(得分:1)
试试这个:
size = 5
for i in range(1,size+1):
if (i==1 or i==size):
print("*"*size)
else:
print("*"+" "*(size-2),end="")
print("*")
输出:
*****
* *
* *
* *
*****
答案 4 :(得分:0)
继承我的榜样:
print("Enter width")
width = int(input())
print("Enter height")
height = int(input())
for i in range(height):
if i in[0]:
print("* "*(width))
elif i in[(height-1)]:
print("* "*(width))
else:
print("*"+" "*(width-2)+" *")
input()
输出:Image link
希望这能帮助其他想要在星号之间留出空间的人,同时打印一个矩形,如果我的代码中有任何错误,请告诉我,因为我自己是初学者。
答案 5 :(得分:0)
size = int(input('Enter the size of square you want to print = '))
for i in range(size): # This defines the rows
for j in range(size): # This defines the columns
print('*' , end=' ') # Printing * and " end=' ' " is giving space after every * preventing from changing line
print() # Giving a command to change row after every column in a row is done
print() # Leaving one line
for k in range(size): # This defines the rows
print('* ' *size) # Defines how many times * should be multiplied
答案 6 :(得分:0)
这是我的python 3.6代码,用于使用列大小和行大小输入绘制正方形:
column = int(input("Enter column size : "))
row = int(input("Enter row size : "))
print('* ' * column)
print(('* ' + " " * (column-2)+ '*'+'\n')*(row -2) + ('* ' * column))
答案 7 :(得分:0)
您还可以使用以下简单方法绘制三角形:
n = int(输入("输入num")) 对于范围内的i(n + 1):
if 2>=i :
print (i * "*")
elif n == i:
print ("*" * i)
else:
print ("*"+" "*(i-2)+"*")
答案 8 :(得分:0)
好用的python库...
termshape-https://github.com/zvibazak/termshape
from termshape import get_rectangle
print(get_rectangle(10, 5))
* * * * * * * * * *
* *
* *
* *
* * * * * * * * * *
答案 9 :(得分:0)
def emptySquare(length,char):
for i in range(length):
for j in range(length):
if (i == 0 or i == length-1 or j == 0 or j == length-1):
print(char,end=" ")
else:
print(" ",end=" ")
print()