Python中文
首页
教程
问答
标签
搜索
登录
注册
TypeError:“generator”对象没有属性“getitem”
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我写了一个生成函数,它应该返回一个字典。但是,当我试图打印一个字段时,会出现以下错误</p> <pre><code>print row2['SearchDate'] TypeError: 'generator' object has no attribute '__getitem__' </code></pre> <p>这是我的密码</p> <pre><code>from csv import DictReader import pandas as pd import numpy as np def genSearch(SearchInfo): for row2 in DictReader(open(SearchInfo)): yield row2 train = 'minitrain.csv' SearchInfo = 'SearchInfo.csv' row2 = {'SearchID': -1} for row1 in DictReader(open(train)): if 'SearchID' in row1 and 'SearchID' in row2 and row1['SearchID'] == row2['SearchID']: x = deepcopy( row1 ) #x['SearchDate'] = row2['percent'] x.update(row2) print 'new' print x else: #call your generator row2 = genSearch(SearchInfo) print row2['SearchDate'] </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>生成器返回一个迭代器,显式地需要对其调用next。</p> <p>最后一行代码应该是-</p> <pre><code>rows_generator = genSearch(SearchInfo) row2 = next(rows_generator, None) print row2['SearchDate'] </code></pre> <p>理想情况下,我们在循环中使用迭代器,它会自动为我们执行相同的操作。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
为什么我的神经网络模型的准确性不能在这个训练集上得到提高?
3 回答
为什么我的神经网络模型的权重变化不大?
5 回答
为什么我的神经网络的成本不断增加?
10 回答
为什么我的神经网络的输入pickle文件是19GB?
9 回答
为什么我的神经网络给属性错误?“非类型”对象没有属性“形状”
3 回答
为什么我的神经网络训练这么慢?
6 回答
为什么我的神经网络输出错误?
9 回答
为什么我的神经网络预测适用于MNIST手绘图像时是正确的,而适用于我自己的手绘图像时是不正确的?
6 回答
为什么我的神经网络验证精度比我的训练精度高,而且它们都是常数?
9 回答
为什么我的私人用户间聊天会显示在其他用户的聊天档案中?
5 回答
为什么我的积分的绝对误差估计值大于积分(使用scipy.integrate.nqad)?
1 回答
为什么我的积层回归器得分比它的组件差?
2 回答
为什么我的移动方法不起作用?
2 回答
为什么我的稀疏张量不能转换成张量
3 回答
为什么我的稀疏张量不能转换成张量?
4 回答
为什么我的程序“停止”了?
8 回答
为什么我的程序一直试图占用所有可用的CPU
4 回答
为什么我的程序不使用指定的代理
5 回答
为什么我的程序不工作(python帮助中的反向函数)?
6 回答
为什么我的程序不工作时,我使用多处理模块
1 回答