使用“ for”或“ if”条件在Python中创建CSV文件

时间:2018-08-08 09:05:07

标签: python csv for-loop if-statement

我将代码设计为:

import csv
import numpy as np
data = [['Diameter', 'color', 'no']]
with open('samp1.csv', 'w') as f:
    writer = csv.writer(f, delimiter=',')
    for row in data:
        writer.writerow(row)
    for i in np.arange(20,30,0.2):
        writer.writerow(i)

f.close()

我想在 diameter 列中以20的增量保存20到30之间的数字,但这会产生错误,甚至没有保存CSV文件。有人可以提出任何解决方案吗?甚至其他列的范围也不同,因此我需要使用相同的方法来处理该代码。

CSV示例

diameter    color     number
20          2         3
20          2.5       3
20          3         3
20          3.5       3
20.2        2         3
20.2        2.5       3
20.2        3         3
20.2        3.5       3
.
.
.
.
22          2         4
22          2.5       4
22          3         4
22          3.5       4
22.2        2         4
22.2        2.5       4
22.2        3         4
22.2        3.5       4

2 个答案:

答案 0 :(得分:1)

使用熊猫库创建它怎么样?使用它,您可以自由选择要保存到csv的DataFrame的一部分。

import pandas as pd
d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)

df.to_csv('out.csv')

答案 1 :(得分:1)

我想这可以为您提供帮助

import csv

data = ['Diameter', 'color', 'no']
numb = [i for i in range(20,30,2)]
print(numb)
with open('samp1.csv', 'w') as f:
    writer = csv.writer(f, delimiter=',')
    writer.writerow(data)
    for i in numb:
            writer.writerow([i,i,i])

f.close()