【问题标题】:Python and csv filesPython 和 csv 文件
【发布时间】:2020-10-04 06:31:14
【问题描述】:

所以我正在处理一项 python 任务,但我被卡住了。那作业... “在这个项目中,您将编写一个程序来读取银行账户数据文件,修改数据并将新数据写入新文件。这个名为 accounts.csv 的文件将是一个 CSV(逗号分隔值)格式的文件包含以下信息字段:

accountNumber、firstName、lastName、accountBalance

您的程序将从该文件中读取,将每行 CSV 数据处理成一个列表,确保正确转换数据类型。这将产生一个列表列表,其中每个子列表代表一个帐户字段。

读取文件并创建帐户列表后,您的程序将为每个帐户的 accountBalance 添加 10 美元,然后此新数据将写入名为adjustedAccounts.csv 的新文件”

accounts.csv 包含“ 1012,Tony,Stark,8388743.54 1034,彼得,帕克,775.12 1290,克拉克,肯特,34.88 1538,戴安娜,王子,23744.95 2008,比利,巴特森,90.11 1169,布鲁斯,韦恩,6100187.33 2217,布鲁斯,横幅,-34.50 1444,詹姆斯,豪利特,0.75 1111,韦德,瓦特,300.20"

def main():
infile = open('accounts.csv', 'r')
outfile = open('adjustedaccounts.csv', 'w')    


for line in infile:
    Customer = line
    
    
   # accountNumber, firstName, lastName, accountBalance
    
    print(Customer, file=outfile)

#for i in range(accountBalance):
    #accountBalance + 10 = newBalance

infile.close()
outfile.close()

main()

我知道我需要将 accountBalance 作为 int 获取,但我似乎无法将其关联起来并让其余数据也显示出来。任何帮助都非常有用!谢谢!

【问题讨论】:

  • csv.
  • 如果您使用的是 python 3,请查看 pathlib。同时查看 with 语句。
  • 要获取逗号分隔的数据,可以使用line.split(',')

标签: python csv


【解决方案1】:

这个:

def main(infile,outfile):
    import csv

    f_in = open(infile,'r')
    f_out = open(outfile,'w')
    
    f_read = csv.reader(f_in, delimiter=',')
    f_write = csv.writer(f_out, delimiter=',')

    for line in f_read:
        # balance is line[3]
        balance = float(line[3])
        balance += 10
        line[3] = str(balance)

        f_write.writerow(line)

    f_in.close()
    f_out.close()

main('accounts.csv','adjustedaccounts.csv')

【讨论】:

    猜你喜欢
    • 2014-09-29
    • 2017-03-25
    • 1970-01-01
    • 1970-01-01
    • 2020-05-21
    • 2019-05-07
    • 2017-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多