python3 題解(25)列印大X

2021-09-28 10:52:35 字數 1185 閱讀 4681

【問題】給定高度和筆寬,在控制台輸出乙個由星號組成的大x。

當 高度=10, 筆寬=4時,輸出如下:

****     ****

**** ****

**** ****

*******

*****

*****

*******

**** ****

**** ****

**** ****

分析:

一下子算出這個圖形的哪個位置輸出星號,哪個位置輸出空格,邏輯較複雜。

如果把問題降解,就容易多了:

只輸出 x 的一撇

只輸出 x 的一捺

只要把這兩個問題決,再組合一下就可以得到答案。

以下是python**:

def

bigx

(height, pen_width)

:def

base

(h,w)

:return

[' '

* i +

'*'* w +

' '*

(h-i-1)

for i in

range

(h)]

defadd

(x, y)

: t =

['*'

if c1==

'*'or c2==

'*'else

' 'for c1, c2 in

zip(x,y)

]return

"".join(t)

a = base(height, pen_width)

b =[reversed

(i)for i in a]

for ia,ib in

zip(a,b)

:yield add(ia,ib)

defdisp

(x):

for i in x:

print

(i)if __name__ ==

'__main__'

: disp(bigx(10,

4))

其中的 base 函式,只生成指定高度和筆寬的一撇。

add 函式,負責對給定的兩個串,求其疊加效果。

python3學習九 列印列印列印

鞏固知識。了解了下 n轉義符 換行 作用。三個引號 可以書寫多行字元,三引號內可以寫單引號雙引號,它會把看做普通的字元。三引號內使用縮排不會特殊理解只會把看這普通字元也就是空格。下面是練習題 here s some new strange stuff,remember type it exactly...

學習python3八列印列印。

加深格式化 學習函式 了解了python保留字元 了解.format 如何傳遞。變數。值中的四個 代 式化。formatter format 內4個內容是給前面定義的變數值裡面的四個 傳遞4個引數。print formatter.format 1,2,3,4 內用了雙引號,代表傳遞給變數定義值裡面寫...

Python3練習題 018 列印星號菱形

python的內建方法 str.center width fillchar 就能輕而易舉列印出來 str即是數量不等的星號,width即是最大寬度 7個空格 預設填充字元fillchar就是空格。兩個for迴圈搞定!如下 12 345s foriinrange 1,8,2 print s i cen...