小编mte*_*eXD的帖子

是否有一个 Python 函数可以检查任何列表元素是否属于特定数据类型?

例如:我有一个名为 的列表container。其中有一些元素,我想检查是否例如。其中任何一个都很复杂。

container = [1, 0.5, "text", 1j]    
if isinstance(container[?], complex):
    print("This list has complex elements")
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我可以写container[-1],但是有通用的方法吗?我可以使用 for 循环,但我想知道是否有更好的方法来做到这一点。

python

2
推荐指数
1
解决办法
276
查看次数

有没有一种方法可以优雅地解决“在可变引用后面移动”而不实现“复制”特征?

我正在尝试在 Rust 中实现合并排序的合并功能。问题是我试图为泛型类型执行此操作T,该类型仅受std::cmp::PartialOrd.

这是代码:

fn my_merge<T: std::cmp::PartialOrd>(a: &mut Vec<T>, mut b: &mut Vec<T>) -> Vec<T> {
    let mut res: Vec<T> = Vec::new();
    let mut a_iter = a.into_iter();  //  !!!
    let mut b_iter = b.into_iter();  //  !!!

    while let (Some(a_item), Some(b_iter)) = (a_iter.next(), b_iter.next()) {
        if a_item <= b_item {
            res.push(*a_item);  // !!!
        } else {
            res.push(*b_item);  // !!!
        }        
    }

    // ... Omitted code ...

    res
}
Run Code Online (Sandbox Code Playgroud)

在查看文档时,我发现了该into_iter()方法,该next()方法应该产生T而不是&T. …

mergesort rust borrow-checker

0
推荐指数
1
解决办法
44
查看次数

标签 统计

borrow-checker ×1

mergesort ×1

python ×1

rust ×1