python双重for循环打印正三角形
时间: 2023-10-13 09:24:12 浏览: 238
可以使用如下代码来打印正三角形:
```
n = 5 # 三角形的高度
for i in range(n):
for j in range(n-i):
print(" ", end="")
for k in range(2*i+1):
print("*", end="")
print()
```
运行结果:
```
*
***
*****
*******
*********
```
解释一下代码:
外层循环控制行数,内层循环控制每行打印的空格和星号数量。第一个内层循环打印前面的空格,第二个内层循环打印星号。其中,第二个内层循环的循环次数是 `2i+1`,即第 `i+1` 行打印 `2i+1` 个星号。`end=""` 是为了将 `print()` 函数默认的换行符去掉,这样就可以在同一行上输出多个字符。
相关问题
python双重循环打印图形
好的,下面是一个双重循环打印正方形的 Python 代码示例:
```python
for i in range(5):
for j in range(5):
print("*", end=" ")
print()
```
这个代码会输出一个边长为 5 的正方形,其中每个边角都是星号。你可以通过修改外层循环和内层循环的迭代次数来调整正方形的大小。
如果你想打印其他形状,可以在内层循环中添加一些条件语句,例如:
```python
for i in range(5):
for j in range(5):
if i == 0 or i == 4 or j == 0 or j == 4:
print("*", end=" ")
else:
print(" ", end=" ")
print()
```
这个代码会输出一个边长为 5 的空心正方形,其中边缘是星号,内部是空格。你可以根据需要修改条件语句来打印其他形状,例如菱形、三角形等等。
用双重for循环打印数字三角形,行数由键盘输入的整数决定。
以下是Python代码实现:
```python
n = int(input("请输入行数:"))
for i in range(1, n+1):
for j in range(1, i+1):
print(j, end=" ")
print()
```
解释一下代码:
首先,我们使用 `input()` 函数从键盘获取行数,将其转换为整数并存储在变量 `n` 中。
然后,我们使用外层的 `for` 循环来控制行数,循环从 1 到 `n`(包括 `n`),即循环了 `n` 次。
在每次外层循环中,我们使用内层的 `for` 循环来打印该行的数字。循环从 1 到当前行数 `i`(包括 `i`),即循环了 `i` 次。
我们使用 `print()` 函数打印数字,并在每个数字后面加上一个空格,以便数字之间有间隔。
最后,我们在内层循环结束时使用 `print()` 函数打印一个空行,以便下一行数字从新的一行开始打印。
阅读全文