Julia 的新 Debugger.jl 很棒,但有时要达到我想要达到的代码中的确切位置有点痛苦。
有没有办法可以进入交互式调试模式,类似于 Python 在 pdb.set_trace() 或 ipdb.set_trace() 中的模式?例如,我希望能够在我希望调试器启动的位置插入一行代码,如下所示:
function myfunc(a, b)
# do stuff
set_trace() # interactive debug mode will start here
# do other stuff
end
Run Code Online (Sandbox Code Playgroud)
ps我知道这基本上就像在Juno中设置断点一样,但是1)我不能总是在Juno中开发;2)即使经过一番努力,我也无法真正让断点与 Juno 的调试器很好地配合工作。这可能是我的用户错误,但我确信其他 Julia 新手也会遇到同样的问题,并且会喜欢 pdb.set_trace() 这样的解决方案。
我正在尝试将字符串添加到数组中,如下所示:
arry = String[]
append!(arry, "test")
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
Cannot `convert` an object of type Char to an object of type String
Run Code Online (Sandbox Code Playgroud)
为什么当我添加字符串而不是字符时会出现此错误?
(为了其他 Julia 新手的利益,在下面发布我自己的答案 - 任何有更多有用提示的人请加入!)
我正在使用 Dates 模块,并且正在尝试将 Seconds 对象转换为整数。
当我尝试以下操作时,出现错误:
x = Second(5)
Int(x)
# ERROR: MethodError: no method matching Int64(::Second)
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用?我如何将其提取为整数值?
我的问题也适用于将分钟转换为整数、将天数转换为整数、将月数转换为整数等。
在 Julia 中,我希望能够将 DataFrame(来自 DataFrames.jl 包)以一种格式复制到系统剪贴板,以便我可以轻松地将其粘贴到另一个程序(如 Excel)中。
如果我只是尝试,clipboard(df)那么它只会给我输出,就像我print(df)在控制台上运行一样,它不会干净地粘贴到 Excel 中。