首页 > 解决方案 > 如何将 0 到 50 期间的 k 值写入 csv 文件?

问题描述

我写了这段代码:

delta, s, theta = 0.08, 0.3, 0.35
k = 2.5
for i in range(1,51):
    k = (1 - delta) * k + s * k ** theta
    print(f"{i:3d}: {k}")    

import csv
with open('capital.csv', 'w', newline='') as csvfile:
     fieldnames = ['col1', 'col2']
     writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
     writer.writeheader()
     for a, b in range(i,k)
         writer.writerow({'col1': a, 'col2': b})

我想在 Excel 文档中看到i第一列中从 0 到 50 的值以及k第二列中的值。

标签: pythoncsv

解决方案


如果我猜对了,您需要 2 列。一个是从 1 到 51 的数字范围,第二个是计算值 (k),这将使它发生:

import csv

delta, s, theta = 0.08, 0.3, 0.35
k = 2.5
with open('capital.csv', 'w') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerow(['col1', 'col2'])
    writer.writerow([0, k])
    for i in range(1, 51):
        k = (1 - delta) * k + s * k ** theta
        writer.writerow([i, k])

推荐阅读