Julia MethodError:没有匹配的方法!(::Base.AbstractIOBuffer{Array{UInt8,1}})

Julia MethodError:没有匹配的方法!(::Base.AbstractIOBuffer{Array{UInt8,1}}),julia,Julia,茱莉亚0.5分在茱莉亚波克斯 为什么下面的函数定义会产生以下错误: Julia MethodError: no method matching take!(::Base.AbstractIOBuffer{Array{UInt8,1}} ) function CoinTrials(x,y; numtrials=100000, numcoins=5 ) Yes=[] No=[] for trial in 1:numtrials trialresults=[]

茱莉亚0.5分在茱莉亚波克斯

为什么下面的函数定义会产生以下错误:

Julia MethodError: no method matching take!(::Base.AbstractIOBuffer{Array{UInt8,1}} )

function CoinTrials(x,y; numtrials=100000, numcoins=5 )
    Yes=[]
    No=[]
    for trial in 1:numtrials
        trialresults=[]
        for coin in 1:numcoins
            result = rand(1,2)
            push(vec,trialresults)
        end 
        if len(filter(x->x==1,trialresults)) >=3
            Yes+=1

        else
            No+=1
        end 
    end
    @printf(Yes,No)
end
…您似乎没有使用
x
y
,因此我不确定它们为什么会出现在这里

    Yes=[]
    No=[]
…既然以后添加1,为什么不创建这些整数计数器

    for trial in 1:numtrials
        trialresults=[]
        for coin in 1:numcoins
            result = rand(1,2)
…这将生成一个由两个介于0和1之间的随机浮点64组成的数组。您想要数组还是单个数字

            push(vec,trialresults)
…没有
push
功能。有一个
函数。你想推吗!(试验结果,结果)
要将最新试验添加到试验结果列表中吗

        end 
        if len(filter(x->x==1,trialresults)) >=3
…没有
len
功能。有一个
length
函数。不过,这在
测试结果中找不到float64

            Yes+=1    
        else
            No+=1
        end 
    end
    @printf(Yes,No)
…此处需要格式字符串:
@printf“%d%d”是否

end

这段代码充满了错误,julia 0.5甚至还没有编译出来。什么是vec?printf必须将字符串文字作为其第一个参数。请更正代码。感谢您的回复。这是在凌晨编写此函数的一次可怕尝试。我已经纠正了它,在我自己的系统上运行,并且收到了一个新的错误。Juliabox对我在上面运行的任何东西都抛出了一个错误,即使是1+1。
end