list - Julia 等价于 python 列表乘法

标签 list julia concatenation repeat

在 python 中,我可以使用 + 和 * 运算符快速连接并创建包含重复元素的列表。例如:

my_list = [1] * 3 + ['a'] * 4  # == [1, 1, 1, 'a', 'a', 'a', 'a']

与 Julia 类似,我可以使用 * 和 ^ 运算符快速连接并创建包含重复元素的字符串。例如:

my_string = "1"^3 * "a"^4  # == "111aaaa"

我的问题是 Julia 中是否有一个方便的列表(数组)等价物。如果不是,那么定义具有重复元素和连接的数组的最简单方法是什么?

最佳答案

对于上述情况,填写一个较短的表格:

[fill(1,3); fill('a', 4)]

如果你愿意,你也可以定义一个 Python 风格的操作符:

⊕(a::AbstractVector{T}, n::Integer) where T = repeat(a, n)
⊕(a::T, n::Integer) where T = fill(a, n)

符号 可以通过键入\oplus 并按 Tab 在 Julia 中输入。

现在你可以像在 Python 中那样做:

julia> [1,2] ⊕ 2
4-element Vector{Int64}:
 1
 2
 1
 2

julia> 3 ⊕ 2
2-element Vector{Int64}:
 3
 3

关于list - Julia 等价于 python 列表乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71473288/

相关文章:

Python:打印不完整

python - 应用于列表的乘法运算符(数据结构)

julia - 元素明智的操作数组 Julia

C 中与二维字符数组的连接

string - matlab向数字向量的每个元素添加一个字符串

list - 有没有办法让 f :viewparam handle lists of values?

java - Hadoop:Eclipse 列表之外丢失数据

julia - 如何在 Julia 中制作 Int8 文字?

julia - Plots.jl - 关闭轴和网格线

python - 如何合并两个具有不同时间戳的 Pandas