当前位置: 首页 > 编程笔记 >

Python用csv写入文件_消除空余行的方法

胥良平
2023-03-14
本文向大家介绍Python用csv写入文件_消除空余行的方法,包括了Python用csv写入文件_消除空余行的方法的使用技巧和注意事项,需要的朋友参考一下

只做简单地记录,方便一下使用!python关于csv模块的介绍网上有很多资料,这里就不在赘诉。直接给出代码和解释。

数据:

Symbol,Price,Date,Time,Change,Volume
"AA",39.48,"6/11/2007","9:36am",-0.18,181800
"AIG",71.38,"6/11/2007","9:36am",-0.15,195500
"AXP",62.58,"6/11/2007","9:36am",-0.46,935000
"BA",98.31,"6/11/2007","9:36am",+0.12,104800
"C",53.08,"6/11/2007","9:36am",-0.25,360900
"CAT",78.29,"6/11/2007","9:36am",-0.23,225400

一、csv读入文件消除空余行

import csv
#@param: wb:覆盖原来的文件内容
#@param: ab+:追加文件内容
 
with open('input.csv','wb') as f: 
 f_csv = csv.writer(f)
 f_csv.writerow(headers)  #读入项目标签名
#  f_csv.writerows(rows)
 id = 1 
 for row in rows:
  row = list(row)   #转换成list,因为原始是tupple
  row.insert(0,id)   #根据特定的题目要求!
  f_csv.writerow(row)
  id += 1

二、读取为一个元组的序列

import csv
with open('stocks.csv') as f:
 f_csv = csv.reader(f)
 headers = next(f_csv)
 for row in f_csv:
  # Process row
  ...

在上面的代码中, row 会是一个列表。因此,为了访问某个字段,你需要使用下标,如 row[0] 访问Symbol, row[4] 访问Change。

三、将数据读取到一个字典序列中

mport csv
with open('stocks.csv') as f:
 f_csv = csv.DictReader(f)
 for row in f_csv:
  # process row
  ...

在这个版本中,你可以使用列名去访问每一行的数据了。比如,row['Symbol'] 或者 row['Change']。

四、写入数据

为了写入CSV数据,你仍然可以使用csv模块,不过这时候先创建一个 writer 对象。例如:

rows = [('AA', 39.48, '6/11/2007', '9:36am', -0.18, 181800),
   ('AIG', 71.38, '6/11/2007', '9:36am', -0.15, 195500),
   ('AXP', 62.58, '6/11/2007', '9:36am', -0.46, 935000),
  ]
 
with open('stocks.csv','w') as f:
 f_csv = csv.writer(f)
 f_csv.writerow(headers)
 f_csv.writerows(rows)

如果你有一个字典序列的数据,可以像这样做:

headers = ['Symbol', 'Price', 'Date', 'Time', 'Change', 'Volume']
rows = [{'Symbol':'AA', 'Price':39.48, 'Date':'6/11/2007',
  'Time':'9:36am', 'Change':-0.18, 'Volume':181800},
  {'Symbol':'AIG', 'Price': 71.38, 'Date':'6/11/2007',
  'Time':'9:36am', 'Change':-0.15, 'Volume': 195500},
  {'Symbol':'AXP', 'Price': 62.58, 'Date':'6/11/2007',
  'Time':'9:36am', 'Change':-0.46, 'Volume': 935000},
  ]
 
with open('stocks.csv','w') as f:
 f_csv = csv.DictWriter(f, headers)
 f_csv.writeheader()
 f_csv.writerows(rows)

写入数据最麻烦的问题就是无缘无故的每行数据结束后都会自动多出一个空行的问题。这就是写这篇文章的意义,处理方法就是《一》中的介绍的内容。

以上这篇Python用csv写入文件_消除空余行的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 我正在尝试将json文件转换为csv文件。json文件来自tweepy。 但是当我打印它的时候,它起作用了。当我只写时,它就起作用了。 我是一个新手在Python和twepy。但是我的直觉告诉我,这个问题与json文件本身有关。 这是json文件本身: 另一个错误: Traceback(最近一次调用):文件"C:\用户\用户\桌面\fase 1-20170930T062552Z-001\trans

  • 本文向大家介绍python对csv文件追加写入列的方法,包括了python对csv文件追加写入列的方法的使用技巧和注意事项,需要的朋友参考一下 python对csv文件追加写入列,具体内容如下所示: 原始数据 结果: 知识点扩展: python:在csv文件每行末写入一列——方法1 总结 以上所述是小编给大家介绍的python对csv文件追加写入列的方法,希望对大家有所帮助,如果大家有任何疑问请给

  • 问题内容: 我正在尝试写入CSV文件,但两者之间有空白行。如何删除空白行? 问题答案: 您使用的方式在几个方面在Python3改变模块(文档),至少相对于您需要打开该文件如何。无论如何,类似 应该管用。

  • 问题内容: 该代码读取,进行更改并将结果写入。 但是,当我在中打开生成的时,每条记录后都有一个额外的空白行! 有没有办法使它不放在多余的空白行? 问题答案: 在Python 2中,请outfile使用模式而不是来打开。该写入直接到文件中。如果你未以二进制模式打开文件,它将写入,因为在Windows 文本模式下会将每个文件转换为。 在Python 3中,所需的语法已更改(请参见下面的文档链接),因此

  • 我是这里的蟒蛇初学者。最近我一直试图从一个当地的中文网站上抓取一些数据。我成功地将信息存储为矩阵(列表列表),但是当我试图将其写入csv文件时,我得到了一些混乱的东西。下面是代码: 我使用的是Python3.4,有人能告诉我哪里出了问题,以及如何改进代码吗?非常感谢!马可

  • 问题内容: 我只想删除第三行中值为‘0’的行。数据示例如下: 因此,第一行将需要删除,而第二行将保留。 到目前为止,我所拥有的如下: 任何帮助都会很棒 问题答案: 你很亲密 目前,您将整数与进行比较,然后将其与字符串进行比较。当您从文件中读取数据时,它是一个字符串而不是整数,因此这就是您的整数检查当前失败的原因: 另外,您可以使用关键字使当前代码略显pythonic,从而减少代码中的行,并且可以省