- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
这是来自 O'Reilly Cookbook 的示例(截断的数据集)
headers = ['Symbol','Price','Date','Time','Change','Volume']
rows = [{'Symbol': 'AA', 'Volume': 181800, 'Change': -0.18,
'Time': '9:36am', 'Date': '6/11/2007', 'Price': 39.48},
{'Symbol': 'AIG', 'Volume': 195500, 'Change': -0.15,
'Time': '9:36am', 'Date': '6/11/2007', 'Price': 71.38} ]
with open('stocks2.csv','w') as f:
f_csv = csv.DictWriter(f, headers)
f_csv.writeheader()
f_csv.writerows(rows)
输出文件在每一行的末尾都有一个\n
,显然最后还有一个。当我将它导入 Excel 时,每行之间都有空行。用Notepad++打开也是一样。
但是,如果我从命令行more
,\n
不会显示。
我看到另一个关于文件末尾的 \n
的问答 - 但这个是关于每行末尾的 \n
的。 (而且我不明白为什么 more
没有给出 \n
。)
我打算将该文件导入 OpenOffice Calc。
最佳答案
此问题仅在 Windows 上的 Python 中出现。
在 Python v3 中,您需要在 open 调用中添加 newline=''
per:
Python 3.3 CSV.Writer writes extra blank rows
在 Python v2 上,在传递给 csv 之前,您需要在 open() 调用中使用“b”将文件打开为二进制文件
换行
with open('stocks2.csv','w') as f:
到:
with open('stocks2.csv','wb') as f:
会解决问题
有关此问题的更多信息:
关于python - csv.writerows() 在每一行之后放置换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30929363/
我有以下代码: import csv input_file = csv.reader(open('template.csv','r+')) #template.csv has 10 lines out
我是 Python 领域的新手。我最近一直在对 CSV 文件进行一些 I/O 操作,我在 csv 模块中发现了两个名称非常相似的方法 - writerow() 和 writerows()。文档中的区别
我有三个 DynamoDB 表。两个表具有属于应用程序一部分的实例 ID,另一个表是我的所有帐户中的所有实例和标签元数据的主表。我对两个表进行了两次扫描以获取实例 ID,然后在主表中查询标签元数据。但
我正在开发的函数,应该在每次调用时添加新的一行字符串和数字分隔符。 我将一个字符串和一个数字列表作为函数的参数传递。 目前,当函数调用时,它仅将参数写入如下: [1.0, 2.0, 3.0] 但是,我
我有一个 CSV,比如 2.csv,在此处发布示例: ,ANPIS,,,,,,, ,AGENTIA JUDETEANA PENTRU PLATI SI INSPECTIE SOCIALA TIMIS,
我目前正在我的 Python 脚本中调用一个 python 脚本,并试图将我的调用输出保存在一个 CSV 文件中。目前它可以工作,但是,每个字符之间都有一个逗号,因此输出不正确。 这是什么原因造成的?
我正在用 Python 3 测试一些非常简单的代码。出于某种原因,下面的代码生成一个空输出,而不是写一行 import csv output = open('hello world.csv', 'w'
使用 Python,我在列表中有一个日期时间对象。我在程序执行期间想要和拥有的日期时间格式是 (%Y/%m/%d %H:%M)。 然后,我使用 csv.writer 和 writerows(在列表列表
这是来自 O'Reilly Cookbook 的示例(截断的数据集) headers = ['Symbol','Price','Date','Time','Change','Volume'] rows
我目前正在从rest api 打印数据。它可以很好地打印,但我想将输出保存到 csv 上的列中。我收到错误 TypeError: writerows() argument must be iterab
我有以下 python 代码,它遍历我的 csv 文件,删除所有百分号 (%),并将文件重写回新的 csv 文件。 在我运行我的代码之前,数据看起来是这样的: |第 1 栏 |第 2 栏 |第 3 栏
以下代码适用于创建 .csv 文件(在 Python 2.7 中): with open('court_addresses.csv', 'w') as csvfile: fieldnames
我正在尝试使用以下代码在 python 中将数据写入 csv 文件: with open('test.csv', 'w') as csvfile: writer = csv.writer(csvfil
The documentation对于 writerows 状态 Write all the rows parameters (a list of row objects as described a
我有一个要写入 csv 文件的字符串列表。列表 list_results 看起来像 ['False, 60, 40 ', 'True, 70, 30, '] 所以,我会尝试这样的事情: with op
根据我的研究,csv.writeRow 应该接受一个列表,然后将其写入给定的 csv 文件。这是我尝试过的: from csv import writer with open('Test.csv',
此代码打开 URL 并在末尾附加 /names 并打开页面并将字符串打印到 test1.csv: import urllib2 import re import csv url = ("http://
Python 2.7 我正在尝试获取此页面上的公司名称并将其保存在 csv 文件中。 我的代码的第一部分工作正常,但每个返回的对象(公司名称)之间有空格。 我在编写结果并将其保存在 csv 文件中时也
我有两个类似于以下示例的词典: # First dictionary dict_names = {} dict_names[1] = 'Jane' dict_names[2] = 'Alex' dic
我有一个列表列表。每个列表应包含 6 个元素。在某些情况下,我的列表只包含 1 个元素(检查以下列表的最后一个元素): [['lemonade', '/g/11bz0dg4b_', '46.65225
我是一名优秀的程序员,十分优秀!