# -*- coding: utf-8 -*-"""《纳瓦尔宝典》四段硬核实验 —— yk 坤帝 公众号配套代码把 Naval 的核心概念用 Python 跑一遍:三种杠杆 / 睡后收入 / specific knowledge / 长期主义。依赖:纯标准库(random / math),python 3.7+ 开箱即跑。用法:python 纳瓦尔宝典_代码.py"""import randomimport math
# ── 实验一:三种杠杆的收益模型 ──────────────────────────────class 杠杆: def __init__(self, 类型, 边际成本=0): self.类型 = 类型 self.边际成本 = 边际成本 # 每多服务一个人,额外增加的成本 def 放大(self, 单次产出, 服务人数): if self.边际成本 == 0: # 零边际成本:服务第 N 个人不再增加成本 return 单次产出 * 服务人数 return 单次产出 * int(服务人数 ** 0.5) # 劳动力:人多了管理成本飙升
# ── 实验二:零边际成本的「睡后收入」累积 ─────────────────────def 睡后收入(每月新增用户, 客单价, 月数=36, 留存率=0.9): 总收入, 在网用户 = 0.0, 0.0 for _ in range(月数): 在网用户 = 在网用户 * 留存率 + 每月新增用户 总收入 += 在网用户 * 客单价 return 总收入
def 实验二_睡后收入(): print("=== 实验二:睡后收入 vs 出卖时间(三年)===") 库收入 = 睡后收入(每月新增用户=500, 客单价=10) 卖命收入 = 100 * 8 * 22 * 12 * 3 # 时薪100,每天8h,月22天,干三年 print(f"一个库三年睡后收入: {库收入 / 10000:.1f} 万") print(f"同样时间出卖时间: {卖命收入 / 10000:.1f} 万") print()
# ── 实验三:specific knowledge 为什么不可替代 ───────────────def 特定知识(x): # 你的「直觉」,非线性、带噪声 return math.sin(x) * math.cos(x * 1.7) + x ** 0.5def 实验三_specific_knowledge(): print("=== 实验三:培训班拟合不出你的 specific knowledge ===") random.seed(7) xs = [random.uniform(0, 5) for _ in range(200)] ys = [特定知识(x) + random.gauss(0, 0.05) for x in xs] # 培训班只能教你线性拟合(最小二乘) n, sx, sy = len(xs), sum(xs), sum(ys) sxx = sum(x * x for x in xs) sxy = sum(x * y for x, y in zip(xs, ys)) a = (n * sxy - sx * sy) / (n * sxx - sx * sx) b = (sy - a * sx) / n 误差 = sum((特定知识(x) - (a * x + b)) ** 2 for x in xs) / n print(f"用线性模型去拟合你的 specific knowledge,均方误差 = {误差:.3f}") print("结论: 培训班永远教不出你这份『手感』") print()
# ── 实验四:长期主义 vs 追热点(Monte Carlo)───────────────def 十年收益(策略): 资产 = 1.0 for _ in range(10): if 策略 == "长期主义": 资产 *= 1.18 # 年化 18%,稳 else: 资产 *= 1 + random.uniform(-0.25, 0.45) # 追热点,波动大、均值更低 return 资产def 实验四_长期主义(): print("=== 实验四:长期主义 vs 追热点(1000 次模拟)===") random.seed(42) 长期 = sorted(十年收益("长期主义") for _ in range(1000)) 热点 = sorted(十年收益("追热点") for _ in range(1000)) print(f"长期主义十年后中位数: {长期[500]:.1f} 倍") print(f"追热点十年后中位数: {热点[500]:.1f} 倍,最低曾到 {min(热点):.2f} 倍") print()
if __name__ == "__main__": 实验一_三种杠杆() 实验二_睡后收入() 实验三_specific_knowledge() 实验四_长期主义()