Re: [心得] 九九乘法表 不使用迴圈

作者: Schottky (順風相送)   2021-02-27 13:15:02
朋友給了我一個很 Python 的解法,要用 Python 3.8 以上才能執行
from itertools import product, zip_longest
from math import prod
def show99(f):
if f[0][1]==9: return f"{f[0][1]:1d} x {f[0][0]:1d} = {f[1]:2d}\n"
else: return f"{f[0][1]:1d} x {f[0][0]:1d} = {f[1]:2d}, "
e = list(product(range(1,10), repeat=2))
l = list(map(prod, e))
f = zip_longest(e,l)
print(''.join(map(show99,f)))
作者: ddavid (謊言接線生)   2021-03-01 08:53:00
用itertools.product算不算作弊用了迴圈?另外有個思路是把首篇方法一那整個九九乘法表的字串編碼壓縮(比如用zip),於是要印時call解壓縮程式解開來再把解開的內容印出來就好,跟request法異曲同工,但不用網路XD

Links booklink

Contact Us: admin [ a t ] ucptt.com