首页 > 解决方案 > Julia语言:将全局列表插入函数,更改全局列表

问题描述

我有关于全局列表变量的信息。我想使用这些信息并对其进行一些操作。但我不想更改这个全局列表。现在我所做的任何操作都会改变这个全局列表。我已经有一个带有这个全局列表的长代码。

以下示例代表我的错误难度:

function Dont_Change_Global_List(L)
Manipulating_List = L
deleteat!(Manipulating_List,2)
return Manipulating_List
end

global s = [1,2,3,4,5]

println("function result: ",Dont_Change_Global_List(s))
println(“global list”, s)

I get:

function result: [1, 3, 4, 5]
global list[1, 3, 4, 5]

我需要以下结果:

function result: [1, 3, 4, 5]
global list[1, 2, 3, 4, 5]

在不更改全局列表但仍然进行操作的情况下,我能做些什么吗?

标签: julia

解决方案


您可以copy在内部列出:

function dont_change_list(L)
    Manipulating_List = copy(L) 
    deleteat!(Manipulating_List,2) 
    return Manipulating_List
end

推荐阅读