Julia 朱莉娅的弦乐
我正在与Julia一起玩,并尝试运行以下函数。有人能告诉我为什么我看不到终端的最后一个字“编程”吗。谢谢Julia 朱莉娅的弦乐,julia,Julia,我正在与Julia一起玩,并尝试运行以下函数。有人能告诉我为什么我看不到终端的最后一个字“编程”吗。谢谢 function prnt(st) emptyArr = [] emptySt = "" id = 1 for char in st if (char != ' ' && char != '\n' && char != '\r') emptySt = emptySt * char
function prnt(st)
emptyArr = []
emptySt = ""
id = 1
for char in st
if (char != ' ' && char != '\n' && char != '\r')
emptySt = emptySt * char
else
print(emptySt)
emptySt = ""
end
end
end
prnt("this is programming")
我只是添加了一点调试println来查看发生了什么:
function prnt(st)
emptyArr = []
emptySt = ""
id = 1
for char in st
println(char) #debug statement
if (char != ' ' && char != '\n' && char != '\r')
emptySt = emptySt * char
else
print(emptySt)
emptySt = ""
end
end
end
结果是:
julia> prnt("this is programming")
t
h
i
s
thisi
s
isp
r
o
g
r
a
m
m
i
n
g
在循环末尾添加一个print(emptySt)
,效果很好:
function prnt(st)
emptyArr = []
emptySt = ""
id = 1
for char in st
if (char != ' ' && char != '\n' && char != '\r')
emptySt = emptySt * char
else
print(emptySt)
emptySt = ""
end
end
print(emptySt) #extra print here
end
这就是结果:
julia> prnt("this is programming")
thisisprogramming
julia> prnt("this is programming")
thisisprogramming
更简单的方法是使用replace
功能:
function prnt2(st)
println(replace(st,r" |\n|\r"=>"")) #using a regular expression (r"")
end
结果是:
julia> prnt("this is programming")
thisisprogramming
julia> prnt("this is programming")
thisisprogramming