You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Rust中打印Polars DataFrame的完整内容?

解决Rust中Polars DataFrame无法打印具体内容的问题

步骤1:启用Polars的格式化特性

Polars默认未启用完整格式化所需的特性,需要在Cargo.toml中添加fmt或fmt_no_tty特性(两者选其一即可,fmt适配终端环境,fmt_no_tty适配非终端环境),同时确保包含读取CSV所需的csv特性:

[dependencies]
polars = { version = "0.37.0", features = ["fmt", "csv"] }

注:版本号可根据你使用的Polars实际版本调整

步骤2:调整打印方式

方式一:使用Display格式化(推荐)

替换原代码中的println!("{:?}", test_df)为println!("{}", test_df),利用Polars的Display trait实现完整输出:

use polars_core::prelude::*;
use polars_io::prelude::*;

fn main() {
    let test_df = example();
    println!("{}", test_df); // 使用Display格式化
}

fn example() -> DataFrame {
    CsvReadOptions::default()
        .with_has_header(true)
        .try_into_reader_with_file_path(Some("C://Rust_WS//test_dataframe//test.csv".into()))
        .unwrap()
        .finish()
        .unwrap()
}

方式二:使用Polars内置的print()方法

直接调用DataFrame的print()方法,该方法会自动处理格式化输出:

use polars_core::prelude::*;
use polars_io::prelude::*;

fn main() {
    let test_df = example();
    test_df.print(); // 调用内置打印方法
}

fn example() -> DataFrame {
    CsvReadOptions::default()
        .with_has_header(true)
        .try_into_reader_with_file_path(Some("C://Rust_WS//test_dataframe//test.csv".into()))
        .unwrap()
        .finish()
        .unwrap()
}

执行cargo run后,就能看到DataFrame的完整内容,而不仅仅是形状信息。

内容的提问来源于stack exchange,提问作者Aneesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 03:25:54