求积问题[体会Python至简之道]
生活随笔
收集整理的這篇文章主要介紹了
求积问题[体会Python至简之道]
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
看到有在問,我就做一個類似問題的解答
問題鏈接
有興趣可以點進去看一下
給出第一個解法:
上面那個是按照他給出那個有點問題的代碼稍作改寫得到的
發現這個不斷要乘的,就忍不住要用reduce寫一遍
再用reduce寫寫
from functools import reduce def multi(p):return reduce(lambda x,y: x * y, p) s = input("輸入一系列的數字\n") n = s.split() n = list(map(int, n)) print(multi(n))再把map也不用,寫一遍:
from functools import reduce def multi(p):return reduce(lambda x, y: int(x) * int(y), p) s = input("輸入一系列的數字\n") n = s.split() print(multi(n))再簡短一行(Python的至簡之道)
from functools import reduce def multi(p):return reduce(lambda x, y: int(x) * int(y), p) s = input("輸入一系列的數字\n") print(multi(s.split()))再來,我們把multi也去掉(這樣可讀性就下降了很多了)
from functools import reduce s = input("輸入一系列的數字\n") print((lambda p: reduce(lambda x, y: int(x) * int(y), p))(s.split()))這樣算上那個import函數就都只有3行了(雖然可能在生成那個博客的時候可能被壓縮提高一行)
總結
以上是生活随笔為你收集整理的求积问题[体会Python至简之道]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [笔记]ndarray切片(python
- 下一篇: Knn算法(约会问题应用)