Types Elixir一个将浮点和整数转换为位字符串的函数?
Elixir是否具有接受整数和浮点并将其转换为字符串的函数 我需要这样的东西:Types Elixir一个将浮点和整数转换为位字符串的函数?,types,erlang,numbers,bitstring,elixir,Types,Erlang,Numbers,Bitstring,Elixir,Elixir是否具有接受整数和浮点并将其转换为字符串的函数 我需要这样的东西: a = 3 b = 3.14 number_to_binary(a) % => "3" number_to_binary(b) % => "3.14" 在Elixir中有没有一个功能已经做了类似的事情?我看了看医生,什么也没看到。我还检查了Erlang文档,也没有看到类似的函数。inspect执行此操作 iex(1)> inspect(3) "3" iex(2)> inspect(3.14)
a = 3
b = 3.14
number_to_binary(a)
% => "3"
number_to_binary(b)
% => "3.14"
在Elixir中有没有一个功能已经做了类似的事情?我看了看医生,什么也没看到。我还检查了Erlang文档,也没有看到类似的函数。inspect执行此操作
iex(1)> inspect(3)
"3"
iex(2)> inspect(3.14)
"3.14"
iex(3)> a = inspect(3.14)
"3.14"
iex(4)> a
"3.14"
对于每种类型,都有一个函数:
number\u to\u binary
函数,请尝试简单地使用inspect
(即Kernel.inspect
,而不是IO.inspect
)
您也可以为此目的使用:
iex(1)> to_string(3)
"3"
iex(2)> to_string(3.14)
"3.14"
或字符串插值:
iex(3)> "#{3.14}"
"3.14"
iex(4)> "#{3}"
"3"
如果您真的想要一个只转换数字的函数,并且在给出任何其他函数时引发,您可以定义自己的函数:
defmodule Test do
def number_to_binary(x) when is_number(x), do: to_string(x)
end
如果您使用的是EXTO,它会将整数转换为浮点数。使用
Model.changeset
defmodule Test do
def number_to_binary(x) when is_number(x), do: to_string(x)
end