回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我在从谷歌应用引擎中取消拾取对象时遇到问题。我正在运行Windows 7。步骤如下:</p>
<ol>
<li>创建一个CSV,其中一个字段是<code>pickle.dumps([[('CS', 2110), ('CS', 3300), ('CS', 3140)]])</code>,或者一些类似的参数。在</li>
</ol>
<p>CSV看起来像这样:</p>
<pre><code>INFO,2210,"CS 2110, 3300, 3140","(lp0
(lp1
(S'CS'
p2
I2110
tp3
a(g2
I3300
tp4
a(g2
I3140
tp5
aa."
CS,3110,CS 2110 or equivalent experience,"(lp0
(lp1
(S'CS'
p2
I2110
tp3
aa."
MSE,4102,"MATH 2210, 2230, 2310, or 2940","(lp0
(lp1
(S'MATH'
p2
I2210
tp3
a(g2
I2230
tp4
a(g2
I2310
tp5
aa(lp6
(g2
I2940
tp7
aa."
</code></pre>
<p>(是的,它们是由<code>pickle.dumps()</code>产生的<code>\n</code>)</p>
<ol start=“2”>
<li>将此文件加载到google app engine开发服务器:</li>
</ol>
<p><code>appcfg.py upload_data --config_file="DataLoader.py" --filename="pre_req_data.csv" --kind=Course --url=http://localhost:8083/remote_api "appdir"</code></p>
<p><strong>课程模式</strong>:</p>
^{pr2}$
<p><strong>数据加载程序.py</strong>:</p>
<pre><code>class CourseLoader(bulkloader.Loader):
def __init__(self):
bulkloader.Loader.__init__(self, 'Course',
[('dept_code', str),
('number', int),
('original_description', str),
('raw_pre_reqs', str)
])
loaders = [CourseLoader]
</code></pre>
<ol start=“3”>
<li>确认数据已成功加载:</li>
</ol>
<p><img src="https://imgur.com/YmZ5W.png" alt="data store"/><img src="https://imgur.com/lqUSt.png" alt="individual entity"/></p>
<ol start=“4”>
<li><p>试着解开:</p>
<p>类主处理程序(webapp.RequestHandler)公司名称:</p>
<pre><code>def get(self):
self.writeOut('cock!')
self.writeOut('\n')
courses = Course().all()
for c in courses:
self.writeOut("%s => %s" % (c.raw_pre_reqs, c.getPreReqs()))
def writeOut(self, string):
self.response.out.write(string)
</code></pre></li>
<li><p>观察误差:</p>
<p>回溯(最近一次呼叫):</p>
<p>文件“C:\Program Files\Google\Google\appengine\Google\appengine\ext\webapp_UuInit_Uu.py”,第511行,在<strong>调用</strong>
处理程序.get(*组)</p>
<p>“文件”主.py“,第30行,在get中
自写(“%s=>;%s”%(c.raw_pre_reqs,c.getPreReqs())</p>
<p>文件“src\模型.py,第17行,在getPreReqs中
酸洗负荷(结构(自身原始需求))在</p>
<p>文件“C:\Python26\lib\泡菜.py“,第1374行,荷载
返回Unpickler(file).load()</p>
<p>文件“C:\Python26\lib\泡菜.py“,第858行,负载
调度键</p>
<p>文件“C:\Python26\lib\泡菜.py“φ
引发值错误,“字符串pickle不安全”</p>
<p>值错误:字符串pickle不安全</p></li>
</ol>
<p>我做错什么了?</strong></p>