有没有一种简单的方法可以在Rust中(从Python)实现以下功能?

>>> print ("Repeat" * 4) RepeatRepeatRepeatRepeat

我开始学习这门语言,似乎String并不能取代Mul,而且我在任何地方都找不到任何关于这种紧凑方式的讨论(除了 map 或循环).

推荐答案

rust 1.16+

str::repeat现在可供 Select :

fn main() {
    let repeated = "Repeat".repeat(4);
    println!("{}", repeated);
}

rust 1.0+

你可以使用iter::repeat:

use std::iter;

fn main() {
    let repeated: String = iter::repeat("Repeat").take(4).collect();
    println!("{}", repeated);
}

这还有一个更通用的好处——它创建了一个无限重复的迭代器,任何类型的迭代器都是可克隆的.

Rust相关问答推荐

按下按钮时如何在服务器中创建文件并在本地下载?

什么是谓词的简短和简洁类型

如何导出 rust 色二进制文件中的符号

有没有办法在Rust中配置常量变量的值?

如何格式化传入Rust中mysql crate的Pool::new的字符串

使用Box优化可选的已知长度数组的内存分配

如何模拟/创建ReqData以测试Actix Web请求处理程序?

更合理的方法来设计样条线函数器?

使用 serde::from_value 反序列化为泛型类型

如何在 `connect_activate()` 之外创建一个 `glib::MainContext::channel()` 并将其传入?

在 Rust 中,是否可以定义一个需要实现类型的构造函数的对象安全特征?

详尽的匹配模式绑定

为什么这个闭包没有实现Fn?

为什么需要同时为值和引用实现`From`?方法不应该自动解引用或borrow 吗?(2023-06-16)

第 7.4 章片段中如何定义 `thread_rng`

使用方法、关联函数和自由函数在 Rust 中初始化函数指针之间的区别

使用 HashMap 条目时如何避免字符串键的短暂克隆?

具有生命周期和以后引用的可变方法

在 Rust 中退出进程

在 Traits 函数中设置生命周期的问题