在Julia中,打印格式化字符串的语法如下:
@printf("Hello %d\n", 5)
Run Code Online (Sandbox Code Playgroud)
为什么是@printf
宏而不是函数?它是否可以接受不同数量的参数?
有没有更好的方法从python中的列表中提取任意索引?
我目前使用的方法是:
a = range(100)
s = [a[i] for i in [5,13,25]]
Run Code Online (Sandbox Code Playgroud)
其中a是我要切片的数组,[5,13,25]是我想要的元素.它似乎比Matlab等价物更冗长:
a = 0:99;
s = a([6,14,26])
Run Code Online (Sandbox Code Playgroud) 将Julia中大小为1*N或N*1的矩阵{T}转换为向量{T}的最有效方法是什么?
例如,说我有
a = [1,3,5]
b = a'
Run Code Online (Sandbox Code Playgroud)
两个a
和b
的类型的Array{Int,2}
(即,Matrix{Int}
).转换a
和b
输入Array{Int,1}
(即Vector{Int}
)的最有效方法是什么?
一种方法是:
a_vec = [x::Int for x in a]
b_vec = [x::Int for x in b]
Run Code Online (Sandbox Code Playgroud) python中的一个常见约定是按如下方式构造脚本的主要功能,因此它既可以直接作为脚本运行,也可以在导入时不导入执行main()
:
def main():
do_stuff()
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
是否有类似的变量在Julia中设置,以便脚本可以知道它是使用导入require("script.jl"
还是直接执行?
例如,说我有两个脚本,a.jl
并且b.jl
,具有沿magic_function()
该行为如下:
a.jl:
println("Did we execute a.jl directly? ", magic_function())
Run Code Online (Sandbox Code Playgroud)
b.jl:
require("a.jl")
Run Code Online (Sandbox Code Playgroud)
执行以下命令会导致......
> julia a.jl
Did we execute a.jl directly? true
> julia b.jl
Did we execute a.jl directly? false
Run Code Online (Sandbox Code Playgroud)
magic_function()
在Julia的当前分布中是否存在类似的函数?
有点的表示法:
absoluteError x y = abs (x-y)
一个不明确的无点符号示例:
absoluteError' = curry (abs . uncurry (-))
将OS X上运行的Python与基于云的SQL Server数据库连接的好方法是什么?
编辑:
使用pyodbc我收到此错误:
>>> import pyodbc
>>> cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=adsf.com;DATABASE=asdf;UID=asdf;PWD=asdf')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
pyodbc.Error: ('00000', '[00000] [iODBC][Driver Manager]dlopen({SQL Server}, 6): image not found (0) (SQLDriverConnect)')
Run Code Online (Sandbox Code Playgroud) 当我将模块上传到Hackage时,我收到以下错误消息:
"暴露的模块使用未分配的顶级名称"
我将模块声明为.cabal文件中的公开模块.还有什么我应该做的吗?
假设我想要一个表单的功能
abstract RecordType
function CreateRecordType(fields_names::Vector{ASCIIString}, type_name::ASCIIString)
# magic that creates the type type_name with string fields field_names
end
Run Code Online (Sandbox Code Playgroud)
例如,CreateRecordType(["name","age"], "Person")
将使用以下定义创建一个新类型:
type Person <: RecordType
name::ASCIIString
age::ASCIIString
end
Run Code Online (Sandbox Code Playgroud)
朱莉娅有可能吗?
我正在开发一个多人游戏服务器,它使用Django作为网络服务器(HTML前端,用户身份验证,游戏可用,排行榜等)和Twisted来处理玩家和游戏之间的连接以及与游戏本身的接口.游戏服务器,网络服务器和数据库可以在不同的机器上运行.
构建共享数据库的"最佳"方式是什么,支持对数据库模式的更改.我应该尝试在Twisted框架中加入Django的ORM并使用延迟来使其无阻塞吗?我是否应该坚持创建和维护两个独立的数据库模式/接口,一个在Django的模型中,另一个在使用twisted.enterprise.row?
同样,使用用户身份验证,我应该使用twisted的用户身份验证功能,还是尝试将Django模块包含在游戏服务器中以处理游戏端的用户身份验证?
是否可以将postgres查询的结果作为输入传递给另一个函数?
作为一个非常人为的例子,说我有一个像
SELECT id, name
FROM users
LIMIT 50
Run Code Online (Sandbox Code Playgroud)
我想创建一个函数my_function
,它接受第一个查询的结果集并返回最小的id.这可能在pl/pgsql中吗?
SELECT my_function(SELECT id, name FROM Users LIMIT 50); --returns 50
Run Code Online (Sandbox Code Playgroud)