解决rust中导入过程中的名称冲突

ymdaylpp  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(165)

新的生 rust ,并试图开发一个应用程序在生 rust ,但遇到了一个问题。
在我的应用程序中,我必须使用zip模块解压缩.zip文件,并需要polars进行分析。
我的进口看起来像下面的东西。

use zip::ZipArchive;
use polars::prelude::*;

.
.

字符串
但不幸的是,rust-analyzer正在抱怨以下消息。

unresolved import `zip::ZipArchive`
no `ZipArchive` in `chunked_array::ops::zip


我也试过以下方法,但没有成功。

use zip::ZipArchive;
use polars::prelude::*;
use polars::chunked_array::ops::{zip as chunked_zip};
.
.


在我的代码中,我没有显式地使用chunked_array::ops::zip,但想了解如何在这两种情况下解决。
1.不要显式使用chunked_array::ops::zip
1.明确使用chunked_array::ops::zip
任何帮助将不胜感激!!

wf82jlnq

wf82jlnq1#

这就是为什么glob导入通常不受欢迎的原因,特别是如果您从中导入的模块具有像zip这样的流行名称。
您可以使用绝对路径use ::zip::ZipArchive 1从zip导入,
显式导入您自己需要的内容并删除use polars::prelude::*;
或者重命名zip crate,例如在Cargo.toml中:

[dependencies]
zip_renamed = { package = "zip", … }

字符串
1)感谢Sven Marnach

相关问题