我想问一下这个想法 我有一个脚本,它打印出这样的钻石形状。
Value : 5
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
* * * * * * *
* * * * *
* * *
*
脚本代码就像这样
masuk = int(input("Value : "))
for jarak in range(1, masuk):
for jarak6 in range(-1, masuk - jarak):
print (" ", end=" ")
for jarak7 in range(1, jarak):
print ("*", end=" ")
for jarak8 in range(jarak, 0, -1):
print ("*", end=" ")
print()
for jarak in range(1, masuk *2 , + 1):
for jarak2 in range(jarak):
print (" ", end=" ")
for jarak3 in range(jarak, masuk + 1):
print ("*", end=" ")
for jarak4 in range(jarak + 1, masuk + 1):
print ("*", end=" ")
print()
我想问的是:
答案 0 :(得分:1)
您的内部循环可以通过简单的字符串乘法替换。而不是写
for i in range(a, b):
print(" ", end=" ")
你可以写
print(" " * (b - a))
通过这种方式,您可以将两个外部循环的所有三个内部循环组合成一个打印调用:
print(" " * num_spaces + "*"*num_asterisks)
我不确定你的意思是删除形状内的钻石。