Python中文
首页
教程
问答
标签
搜索
登录
注册
Python CSV导出4000行limi
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>按照<a href="https://stackoverflow.com/questions/40535615/python-typeerror-with-for-logic-iterating-data-values">this question</a>的说法,我之前曾发布过一段时间,我正在解析JSON格式的数据,并根据需要将其提取到CSV文件中。在</p> <p>我现在注意到,使用更大的JSON可以提取数据所指向的CSV文件在第4000行之后停止创建记录,<strike><strong>但是JSON原始数据文件肯定有比4000行更多的行需要提取。所以这就是我的想法,也是错误的。最后,我在下面的问题中添加了一个答案:在我的案例中应用了什么,供应商建议了修复,我实际应用的修复解决了这个问题。在</p> <h2>相关问题</h2> <ul> <li><p>使用下面列出的Python方法是否有4000行的导出限制或行读取限制?</p></li> <li><blockquote> <pre><code>with open(RawDataFile,"r") as file: data = json.load(file) with open(CsvFile,"w",newline='') as file: csv_file = csv.writer(file) </code></pre> </blockquote></li> <li><p>是否有任何方法可以解决所有行都可以导出到文件中而不考虑记录/行数的问题?在</p> <ul> <li>我甚至考虑将每一组4000条记录放入自己的文件的逻辑是,文件名的最后一部分可以用一个计数号自动迭代,例如<code><filename1></code>,<code><filename2></code>,<code><filename2></code>,依此类推,每个记录不超过4000条。在</li> </ul></li> <li>理想情况下,我希望继续使用Python,即使使用与此不同的方法将所有数据放入一个文件中,并进行相应的CSV解析。在</li> </ul> <hr/> <h2>完整的Python逻辑(虽然有点改变)</h2> <p><em>我需要能够将所有记录导出到一个平面文件,而不仅仅是前4000个。使用下面的格式可以得到我所需要的格式。</em></p> <pre><code>import json import csv import sys RawDataFile = sys.argv[1] CsvFile = sys.argv[2] with open(RawDataFile,"r") as file: data = json.load(file) with open(CsvFile,"w",newline='') as file: csv_file = csv.writer(file) for dev in data["devs"]: for tag in dev["tags"]: if "history" in tag: for hist in tag["history"]: csv_file.writerow([tag['TagId'], hist['date'].replace('T',' ').replace('Z',''), hist['value']]) </code></pre> <hr/> <h2>环境规范</h2> <ul> <li>Windows Server 2008 Enterprise x64(很遗憾) <ul> <li>144 GB内存</li> <li><a href="https://i.stack.imgur.com/QQG8L.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/QQG8L.png" alt="enter image description here"/></a></li> </ul></li> <li>Python 3.5.2(v3.5.2:4def2a2901a5,2016年6月25日,22:18:55)[MSC v.1900 64位(AMD64)]</li> </ul>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我不确定,因为我不知道你的数据是什么样的,但是csv的字段大小有一个限制,你可以更改。在python 2.7中,默认值为:</p> <pre><code>import csv print csv.field_size_limit() </code></pre> <p>输出:131072</p> <p>这似乎是Python2.7的最大值。也许通过使用<code>newline = ''</code>您无意中连接了行,从而创建了一个大字段。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
尽管Python中的所有内容都是引用,为什么Python导师在没有指针的列表中绘制字符串和整数?
7 回答
尽管python中的表达式为false,但循环仍在运行
9 回答
尽管python代码正确,但从nifi ExecuteScript处理器获取语法错误
4 回答
尽管Python在Neovim中工作得很好,但插件不能识别Neovim中的Python主机
3 回答
尽管python字典包含了大量的条目,但它并没有增长
2 回答
尽管python说模块存在,为什么我会得到这个消息?
1 回答
尽管setuptools和控制盘是最新的,但无法识别singleversionexternallymanaged
5 回答
尽管stdout和stderr重定向,但未捕获错误消息
1 回答
尽管Tensorboard的事件太大,但Tensorboard的步骤太少了
8 回答
尽管tkinter上的变量已更改,但显示未更改
2 回答
尽管try/except使用Python进行单元测试时出现断言错误
7 回答
尽管URL是sam,但仍会抛出“达到最大重定向”
4 回答
尽管url有效,Pandas仍读取url的\u csv错误
4 回答
尽管while中存在时间延迟,但LINUX线程的CPU利用率为100%(1)
6 回答
尽管x0在范围内,Scipy优化仍会引发ValueError
9 回答
尽管xpath正确,但使用selenium单击链接仍不起作用
3 回答
尽管下载了ffmpeg并设置了路径变量python,但没有后端错误
9 回答
尽管下载了i,但找不到型号“fr”
9 回答
尽管下载了plotnine包,但未获取名为“plotnine”的模块时出错
1 回答
尽管为所有行指定了权重,网格(0)仍不起作用
7 回答