没有bug队——加贝——Python 练习实例 23,24
生活随笔
收集整理的這篇文章主要介紹了
没有bug队——加贝——Python 练习实例 23,24
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
23.題目:打印菱形
程序分析:先把圖形分成兩部分來看待,前四行一個規律,后三行一個規律,利用雙重for循環,第一層控制行,第二層控制列。
注:將這個圖形看成對稱的,前面和后面的編輯方式正好相反
代碼:
#23 from sys import stdout for i in range(4):for j in range(2 - i + 1):stdout.write(' ')for k in range(2 * i + 1):stdout.write('*')print('')for i in range(3):for j in range(i + 1):stdout.write(' ')for k in range(4 - 2 * i + 1):stdout.write('*')print('')輸出:
?24.題目:
有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。
程序分析:請抓住分子與分母的變化規律。
注:后面一個數等于前面兩個數之和
知識點:
1. reduce()?函數會對參數序列中元素進行累積。
函數將一個數據集合(鏈表,元組等)中的所有數據進行下列操作:用傳給 reduce 中的函數 function(有兩個參數)先對集合中的第 1、2 個元素進行操作,得到的結果再與第三個數據用 function 函數運算,最后得到一個結果。
2. lambda x,y: x + y? : 定義自變量x,因變量y的函數,x = x+y ; y = x/y
#23 from functools import reducea = 2.0 b = 1.0 l = [] l.append(a / b) for n in range(1,20):b,a = a,a + bl.append(a / b) print (reduce(lambda x,y: x + y,l))輸出:
總結
以上是生活随笔為你收集整理的没有bug队——加贝——Python 练习实例 23,24的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java连接数据库所遇到的坑,连接数据库
- 下一篇: websocket python爬虫_p