# -*- coding: utf-8 -*-
from prettytable import PrettyTable
pt = PrettyTable()
# 需要安装prettytable这个库来美化一下显示
# 生成一下表头
numb_9 = range(1,10)
pt.field_names=[i for i in numb_9]
# 在这里生成一个整个表
mulp=[["{b}x{a}={c}".format(a=a,b=b,c=a*b) if a>=b else "" for b in numb_9] for a in numb_9]
# 这里是将表加入列中
map(pt.add_row,mulp)
# 这里使用最简单的打印一下
print(pt)

本来就是很简单的东西,就是强迫症犯了希望打印的漂亮一点。如果使用py3 的话会有一点问题,毕竟range 在3中是个迭代器,map 返回的也是个迭代器。然后就没什么好说的了,实现起来还是很简单。