我试图以特定的方式将参数传递给map()中的匿名函数(请参见代码示例).

Julia中的以下代码...

function f(x,y):map((z)->z+y,x) end
print(f([1,2,3],1))

返回值:

MethodError: objects of type Symbol are not callable
Stacktrace:
 [1] f(x::Vector{Int64}, y::Int64)
   @ Main .\REPL[1]:1
 [2] top-level scope
   @ REPL[5]:1

已翻译为Python的相同代码...

def f(x,y):
    return map(lambda z:z+y,x)
print(list(f([1,2,3],1)))

按预期工作:

为什么与Python相比,Julia中的同一代码块表现不正常?解决方法是什么?

推荐答案

这只是一个语法问题:Julia函数声明在函数体之前不使用冒号.

julia> function f(x,y) map((z)->z+y,x) end
f (generic function with 2 methods)

julia> print(f([1,2,3],1))
[2, 3, 4]

或者更容易理解,

julia> function f(x, y)
         map(z -> z .+ y, x)
       end
f (generic function with 2 methods)

julia> print(f([1,2,3],1))
[2, 3, 4]

Python相关问答推荐

如何按row_id/row_number过滤数据帧

什么是一种快速而优雅的方式来转换一个包含一串重复的列,而不对同一个值多次运行转换,

对数据帧进行分组,并按组间等概率抽样n行

BeatuifulSoup从欧洲志愿者服务中获取数据和解析:一个从EU-Site收集机会的小铲子

如何在python tkinter中绑定键盘上的另一个回车?

我如何处理超类和子类的情况

是否将Pandas 数据帧标题/标题以纯文本格式转换为字符串输出?

Django-修改后的管理表单返回对象而不是文本

搜索结果未显示.我的URL选项卡显示:http://127.0.0.1:8000/search?";,而不是这个:";http://127.0.0.1:8000/search?q=name";

查找系统上安装的所有Python

Networkx中K-Shell最核心的 node

通过PyTorch中的MIN函数传递渐变

为什么我在Django中收到错误&无法解包不可迭代的bool对象?

真正的Python散布函数

改进积分方程式、Worker关键字非函数拟合的scipy.Integrate.quad_vec性能

一种获取所有相关列的极点数据帧绝对最大值的毕达式方法

生成错误结果的DataFrame.groupby.ank?

如何避免在PIL中绘制文本时创建透明部分?

安装Spacy 2.3.5时出现错误消息-需要Microsoft Visual C++14.0或更高版本,即使已安装生成工具也是如此

Kivy:如何给浮动按钮(FloatLayout)添加on_Release方法?