python - 将生成器对象转换为列表时出现错误“要解压的值太多”
问题描述
我正在使用 rasterio 示例模块,我想将我的输出(生成器)转换为列表。我知道我可以只使用 list() 但它会引发错误“解包的值太多(预期为 2)”。当我只使用示例模块时,我得到了生成器:
sample = rasterio.sample.sample_gen(raster, ['754707','4248548'])
但试图列出一个清单:
sample = list(rasterio.sample.sample_gen(raster, ['754707','4248548']))
引发错误。我找到了 .items() 方法,但它适用于字典,它对生成器没有用,我第一次使用生成器对象,但我不明白有什么问题。
解决方案
尝试:
sample = list(rasterio.sample.sample_gen(raster, [('754707','4248548')]))
在您的示例中,列表中的字符串是Sequence
-like 且可迭代的,因此在解压缩它们时,它们会得到 6 个值,并且需要两个值。这些字符串可能需要是int
or float
,但我不确定
推荐阅读
- python - 由多进程启动时功能不起作用
- javascript - 世博会联系人返回部分结果 - 缺少联系人
- postgresql - 如何通过 PostgreSQL 查询 odoo 14 从日期时间字段更新浮点字段中的时间
- java - Freemarker 以下已评估为 null 或缺失
- c# - 如何修复 Azure 管道错误 NETSDK1152?
- redis - 在 redis / sentinel 中设置身份验证密码,停机时间为零
- javascript - zustand:更改存储对象中的参数值
- java - 产品减去按钮在电子商务应用程序中无法正常工作
- java - 仅当文件已更改时如何在 Maven 中复制文件
- java - 如何在android中创建贝塞尔曲线底部导航栏