---
tags: python
---
# 練習文字圖形
## 練習1

```python=
for i in range(1,6):
for k in range(i):
print("*",end="")
print()
```
---
## 練習2

```python=
for i in range(-4,5):
for k in range(-4,5):
if (abs(i)+abs(k)) <= 4 and (abs(i)+abs(k))%2 == 0:
print("*",end="")
else:
print(" ",end="")
print()
```
---
## 練習3

```python=
for i in range(1,6):
for k in range(i):
print(i,end="")
print()
```
---
## 練習4

```python=
for i in range(-4,5):
for k in range(-4,5):
if abs(i)+abs(k) <=abs(i)*2:
print(abs(i)+1,end="")
else:
print(abs(k)+1,end="")
print()
```
---
## 練習5

```python=
for i in range(1,6):
for k in range(i):
print(chr(64+i),end="")
print()
```
---
## 練習6

```python=
for i in range(5):
print(chr(65+i))
print()
for i in range(5):
print(chr(65+i),end="")
```
---
## 練習7

```python=
for k in range(1,4):
for i in range(3):
for j in range(3*k):
if j%3<=i:
print("*",end="")
else:
print(" ",end="")
print()
```
思考方向:先畫出下圖

012345678
第一行→ x□□x□□x□□
第二行→ xx□xx□xx□
第三行→ xxxxxxxxx
```python=
for i in range(3): #印第i行
for j in range(9): #印第j列 口口口口口口口口口
if j%3<=i: #i是0一顆*,i是1二顆*,i是2三顆星
print("*",end="")
else:
print(" ",end="")
print()
```
---
## 練習8

```python=
for i in range(7):
for j in range(-7,7):
if abs(i)==abs(j):
print("*",end="")
else:
print(" ",end="")
print()
print("*"+" *"*(i+1))
```
```python=
for i in range(1,8):
print((8-i)*" "+"*"+(((i-1)*2)-1)*" "+(i>1)*"*")
print((i+1)*"* ")
```
---
## 練習9-0

```python=
for i in range(-4,5):
print(" "*(4-abs(i))+"*"*(2*abs(i)+1))
```
---
## 練習9-1

```python=
for i in range(-4,5):
for j in range(-4,5):
if abs(j)%5>=abs(i):
print("*",end="")
else:
print(" ",end="")
print()
```
同場加映

```python=
for i in range(-4,5):
for j in range(-5,5):
if j%5>=abs(i):
print("*",end="")
else:
print(" ",end="")
print()
```
---
## 練習9-2

```python=
for i in range(-4,5):
for j in range(-4,5):
if abs(j)+abs(i)>=4:
print("*",end="")
else:
print(" ",end="")
print()
```
---
## 練習10

```python=
for i in range(-7,1):
for j in range(-7,8):
if abs(i)>=abs(j) and j!=0:
print("*",end="")
else:
print(" ",end="")
print()
```
---
## 練習11

```python=
for i in range(1,6):
print(" "*(5-i) + " *"*i + " "*(5-i)*2 + " *"*i)
```
---
## 練習12

```python=
for i in range(5,0,-1):
for j in range(i):
print(chr(70-i),end="")
print()
```
```python=
for i in range(5,0,-1):
print(chr(70-i)*i)
```
---
## 練習13

```python=
for i in range(1,6):
for j in range(i,2*i):
print(j%2,end="")
print()
```
---
## 練習14

```python=
for i in range(1,6):
for j in range(1,6):
if i==j:
print("0",end="")
else:
print(i,end="")
print()
```
---
## 練習15

```python=
for i in range(5): #跑第幾行(row),第 0 層到 4 層
strs="" #每層迴圈字串清空
sum=0 #每層迴圈數字歸零
for j in range(2*i+1): #跑第幾列(Column)
if j>(2*i+1)/2:
s=-1 #如果超過一半開始遞減
else:
s=1 #未過半則遞增
sum = sum + s #計算個別數字
strs=strs + str(sum) #將個別數字合併為字串
print(" "*(4-i) + strs)
```
```python=
for i in range(5): #跑第幾行(row),第 0 層到 4 層
print(" "*(4-i),end="") #每行先印空白
sum=0 #每層迴圈數字歸零
for j in range(2*i+1): #跑第幾列(Column)
if j>(2*i+1)/2:
s=-1 #如果超過一半開始遞減
else:
s=1 #未過半則遞增
sum = sum + s #計算個別數字
print(sum,end="")
print()
```
---
## 練習16

```python=
for i in range(5):
print(" "*(4-i)+str(5-i)*(i+1))
```
---
## 練習17

```python=
sum=0
for i in range(5):
for j in range(i+1):
sum=sum+1
if sum<10:
strs=" "+str(sum)
else:
strs=str(sum)
print(strs + " ",end="")
print()
```
---
## 練習18

```python=
for i in range(6):
for j in range(-5,6):
if abs(j)>=abs(i):
print(chr(70-abs(j)),end="")
else:
print(" ",end="")
print()
```
---
## 練習19

```python=
strs="SCHOOL"
for i in range(6):
for j in range(i+1):
print(strs[j],end="")
print()
```
---
## 練習20

```python=
for i in range(-4,5):
for j in range(-4,5):
if abs(i)==abs(j):
print(chr(97+abs(i)),end="")
else:
print(" ",end="")
print()
```
---
## 習題01

```python=
for i in range(-4,5):
for j in range(5-abs(i)):
print(j+1,end="")
print()
```
---
## 習題02

```python=
for i in range(1,6):
print(" "*(5-i) + "*"*i)
```
---
## 習題03

```python=
for i in range(-4,5):
for j in range(5-abs(i)):
print(chr(j+97),end="")
print()
```
---
## 習題04

```python=
for i in range(-2,3):
print(" "*abs(i) + "* "*(3-abs(i)))
```
---
## 習題05

```python=
for i in range(-4,5):
for j in range(-4,5):
if 4 - abs(j) <= abs(i):
print("*",end="")
else:
print(" ",end="")
print()
```
---