如何解决将生成器对象转换为列表时出现错误“解包的值太多”
我正在使用 rasterio 示例模块,我想将我的输出(生成器)转换为列表。我知道我可以只使用 list() 但它会引发错误“解包的值太多(预期为 2)”。当我只使用示例模块时,我得到了生成器:
sample = rasterio.sample.sample_gen(raster,['754707','4248548'])
但试图列出:
sample = list(rasterio.sample.sample_gen(raster,'4248548']))
引发错误。我找到了 .items() 方法,但它适用于字典,它对生成器没有用,我第一次使用生成器对象,但我不明白有什么问题。
解决方法
试试:
sample = list(rasterio.sample.sample_gen(raster,[('754707','4248548')]))
在您的示例中,列表中的字符串类似于 Sequence
且可迭代,因此在解压缩它们时,它们会得到 6 个值,并且需要两个值。这些字符串可能需要是 int
或 float
,但我不确定
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。