从csv文件

时间:2017-01-11 19:49:02

标签: python csv

我正在使用wordpad(.txt)作为我的csv,因为我比excel csv更容易。

我试图创建一个程序,询问用户输入一个数字,然后从我文件中的数字中减去这个数字。 我已经搜索了youtube和stackoverflow,但是给出的示例与我使用wordpad时没有匹配。

这就是我的wordpad文件::

345,apples,10,10
567,orange,20,20
906,banana,5,5

在欢迎用户并向他们索要号码之后,我将使用这个号码(我会将其分配给名为num的变量)并从每行中的第3个数字中取出num (用户将选择他们希望选择的项目),这将是我的答案变量。然后我希望用答案更改(追加)csv行中的第3个数字。

我希望这很有道理,非常感谢。

1 个答案:

答案 0 :(得分:0)

这应该有效:

import csv

subtr = input("how much should be substracted from 3rd col? ")
with open('data.csv', 'rb') as csvfile:
    reader = csv.reader(csvfile, delimiter=',')
    for row in reader:
        print(int(row[2]) - int(subtr))

将data.csv作为:

345,apples,10,10
567,orange,20,20
906,banana,5,5

示例会话:

$ python script.py
how much should be substracted from 3rd col? 20
-10
0
-15

因为你是python的新手,这里有一些暗示:

  • 你正在使用csv阅读器,这是一个python助手模块,用任何分隔符读取csv文件(与你创建的那个编辑器无关)
  • 你需要告诉python第三列是一个int(row[2])
  • 的整数
  • 列为0索引,这就是您说row[2]
  • 的原因