如何在 python 中通过乘号打印矩形形状?
How to print a rectangle shape thru multiplication signs in python?
long = int(input("longueur : "))
larg = int(input("largeur : "))
for i in range(larg):
if i == 0 or i == larg - 1:
for j in range(long):
print("* ", end="")
print()
else:
for j in range(long):
if j == 0 or j == long - 1:
print("* ", end="")
else:
print(end=" ")
print()
我试图通过符号实现矩形形状。
我最近开始学习 Python,我正在寻找 faster/cleaner 的方法。
请求的输出是:
* * * *
* *
* * * *
你可以试试旧的基础 for 循环
rows = 3
columns = 3
for i in range(rows):
for j in range(columns):
print('*', end=' ')
print()
会给
* * *
* * *
* * *
根据你更新的空心问题
for i in range(1, rows + 1):
for j in range(1, columns + 1):
if i == 1 or i == rows or j == 1 or j == columns:
print("*", end=" ")
else:
print(" ", end=" ")
print()
会给
* * *
* *
* * *
好吧,你可以使用乘法符号:
rows = 3
columns = 5
print(('* ' * columns + '\n') * rows, end = '')
输出:
* * * * *
* * * * *
* * * * *
如果你想打印一个空心矩形,它会稍微复杂一些,因为你需要在中间放置不同的行。例如:
for r in range(rows):
if r == 0 or r == rows - 1:
print('* ' * columns)
else:
print('* ' + ' ' * (columns - 2) + '* ')
输出:
* * * * *
* *
* * * * *
这是一个简洁明了的方法...
length = int(input("length: "))
width = int(input("width: "))
for i in range(length):
print("* " * width)
您需要使用循环遍历每一行。如果该行是第一行或最后一行,则用 column * '*'
填充它。如果该行是中间那一行,那么添加一个'*'
,填充适当的空格,最后添加一个'*'
。
方法如下:
long = int(input("longueur : "))
larg = int(input("largeur : "))
for i in range(long):
if (i == 0) or (i == long - 1): # Checking if it is first or last row
print('* ' * larg) # Printing entire row without gap
else: # For middle rows
print('* ' + ' ' *(larg - 2) + '*') # Printing middle rows with gap in between.
输出:
longueur : 3
largeur : 4
* * * *
* *
* * * *
longueur : 4
largeur : 7
* * * * * * *
* *
* *
* * * * * * *
long = int(input("longueur : "))
larg = int(input("largeur : "))
for i in range(larg):
if i == 0 or i == larg - 1:
for j in range(long):
print("* ", end="")
print()
else:
for j in range(long):
if j == 0 or j == long - 1:
print("* ", end="")
else:
print(end=" ")
print()
我试图通过符号实现矩形形状。
我最近开始学习 Python,我正在寻找 faster/cleaner 的方法。
请求的输出是:
* * * *
* *
* * * *
你可以试试旧的基础 for 循环
rows = 3
columns = 3
for i in range(rows):
for j in range(columns):
print('*', end=' ')
print()
会给
* * *
* * *
* * *
根据你更新的空心问题
for i in range(1, rows + 1):
for j in range(1, columns + 1):
if i == 1 or i == rows or j == 1 or j == columns:
print("*", end=" ")
else:
print(" ", end=" ")
print()
会给
* * *
* *
* * *
好吧,你可以使用乘法符号:
rows = 3
columns = 5
print(('* ' * columns + '\n') * rows, end = '')
输出:
* * * * *
* * * * *
* * * * *
如果你想打印一个空心矩形,它会稍微复杂一些,因为你需要在中间放置不同的行。例如:
for r in range(rows):
if r == 0 or r == rows - 1:
print('* ' * columns)
else:
print('* ' + ' ' * (columns - 2) + '* ')
输出:
* * * * *
* *
* * * * *
这是一个简洁明了的方法...
length = int(input("length: "))
width = int(input("width: "))
for i in range(length):
print("* " * width)
您需要使用循环遍历每一行。如果该行是第一行或最后一行,则用 column * '*'
填充它。如果该行是中间那一行,那么添加一个'*'
,填充适当的空格,最后添加一个'*'
。
方法如下:
long = int(input("longueur : "))
larg = int(input("largeur : "))
for i in range(long):
if (i == 0) or (i == long - 1): # Checking if it is first or last row
print('* ' * larg) # Printing entire row without gap
else: # For middle rows
print('* ' + ' ' *(larg - 2) + '*') # Printing middle rows with gap in between.
输出:
longueur : 3
largeur : 4
* * * *
* *
* * * *
longueur : 4
largeur : 7
* * * * * * *
* *
* *
* * * * * * *