小编Dmi*_*iev的帖子

Ruby语言好奇整数算法:(-5/2)!=-(5/2)

我花了一些时间完成一个关于拆分数组的非常简单的任务。直到我发现:2 == 5/2-3 == -5/2。要获取,-2我需要从括号中减去负号:-2 == -(5/2)。为什么会这样?据我了解,结果四舍五入为最小整数,但是(-2.5).to_i == -2。非常好奇。

# https://www.codewars.com/kata/swap-the-head-and-the-tail/train/ruby
# -5/2 != -(5/2)
def swap_head_tail a
  a[-(a.size/2)..-1] + a[a.size/2...-(a.size/2)] + a[0...a.size/2] 
end 
Run Code Online (Sandbox Code Playgroud)

ruby integer

9
推荐指数
1
解决办法
201
查看次数

Unity3d文件类型.它们是什么:.meta,.controller,.anim,.asset?

简短问题:

.controler, .anim, .assetUnity项目中文件类型的用途是什么.

重要说明: 此问题的目的是通过它的文件类型调查Unity3d项目结构.

我不是在问如何为git准备我的项目.我对它们的扩展名的文件的目的和行为感兴趣,在摘要#1中查找文档.

简介如何出现此问题:

我正在使用unity3d,当我运行git status后同步时,我得到了一长串修改/删除的文件,我没有触及.这些文件有下一个扩展:*.meta, *.controller, *.anim, *.assets

经过长时间的谷歌搜索与不同的请求后,我发现足够好的信息只会在文件中*.meta丢失或重复时可能发生的文件和冲突.但其他文件扩展名在谷歌的回复中没有得到很好的体现.我只能通过扩展来猜测这些文件的作用,但我更喜欢它.guid*.meta

摘要:

您能否帮我找到有关Unity3d项目中具有下一个文件扩展名的文件的用途,结构和行为的信息.

1)*.metaUnity3d中的文件是什么?

回答#1: 此文件类型包含有关无法存储在资产内的资产的数据.每个资产都有自己的*.meta文件. https://blog.forrestthewoods.com/managing-meta-files-in-unity-713166ee3d30

2)什么是.*.controllerUnity3d中的文件?

3)*.animUnity3d中的文件是什么?

4)*.assetUnit3d中的文件是什么?

unity-game-engine

5
推荐指数
1
解决办法
516
查看次数

从translate.google.com 中提取声音

Bunenas tardes se\xc3\xb1ores!

\n

多年来,我通过 Chrome DevTools 和 Network 选项卡从 google.translate.com 中提取声音。单击网络选项卡中的声音按钮时,会出现 mp3 文件。我只需单击它并下载以用于进一步的教育目的。

\n

现在(字面上的今天)只有 XHR 类型的文件,在方括号内有无数的字符序列,就像 JS 数组中的字符串一样。而且页面本身相当复杂。

\n

如何在新的环境下提取声音?

\n
    \n
  • 一些如何从 XHR 文件中提取的信息。
  • \n
  • 可能是在 GNU/Linux 声音系统中录制的某种方式。
  • \n
  • 或者是其他东西。
  • \n
\n

谢谢。

\n

audio google-chrome

3
推荐指数
1
解决办法
4351
查看次数

重击:[-f] && echo 1#什么是正确检查的文件?

当我在表达式中不添加任何文件名时,将检查哪个文件存在并且是常规文件[ -f ] && echo 1

$ [ -f ] &&  echo "1"
1
Run Code Online (Sandbox Code Playgroud)

bash conditional-statements

2
推荐指数
1
解决办法
41
查看次数

Rubocop警告:Style/EndOfLine具有错误的命名空间

我在Windows平台下使用Ruby.解决"Carriage return character missing"rubocop攻击,我在.rubocop.yml项目的根目录中创建了文件:

Style/EndOfLine:
  EnforcedStyle: lf
Run Code Online (Sandbox Code Playgroud)

这解决了我的"回车"问题.但是出现了新警告:

〜/ project/.rubocop.yml:Style/EndOfLine有错误的命名空间 - 应该是Layout

它是什么意思"错误的命名空间 - 应该是布局"?目前我不知道在哪里挖掘修复它.

ruby rubocop

1
推荐指数
1
解决办法
1531
查看次数

通过 lambda 的 Ruby 循环,如何中断?

可以dead loop在 ruby​​ 中使用 lambdas创建:

a = 0
lambda = ->{ a += 1; puts "#{a}"; sleep 1}
loop &lambda
p a
Run Code Online (Sandbox Code Playgroud)

现在我正在寻找一种方法来处理break这种由lambda转移到 block生成的循环。我曾经尝试过的两种明显方法都没有完成循环,它们只是退出了 lambda,但循环仍然有效:

break 不要停止循环:

a = 0
lambda = ->{ a += 1; puts "#{a} break"; sleep 1; break; p "This line will not appears"}
loop &lambda
p a
Run Code Online (Sandbox Code Playgroud)

return 也不要停止循环:

a = 0
lambda = ->{ a += 1; puts "#{a} return"; sleep 1; return; p "This line will …
Run Code Online (Sandbox Code Playgroud)

ruby lambda loops

1
推荐指数
1
解决办法
360
查看次数

Ruby的不同行为取决于块类型

美好的一天.我有相同的代码块的不同行为取决于块语法花括号或do/end的类型.刚跳过do/end的块没有任何错误通知:

带有大括号的块只是实现和p打印one Ruby is a COOL language!:

p "rubyisacoollanguage".gsub(/(ruby)(is)(a)(cool)(language)/) {
   "one " + $1.capitalize + " %s %s %s %s!" % [$2,$3,$4.upcase,$5]
}
Run Code Online (Sandbox Code Playgroud)

do/end中的"相同"代码段只是跳过,并p告诉我Enumerator <Enumerator: "rubyisacoollanguage":gsub(/(ruby)(is)(a)(cool)(language)/)>:

p "rubyisacoollanguage".gsub(/(ruby)(is)(a)(cool)(language)/) do
    "two " + $1.capitalize + " %s %s %s %s!" % [$2,$3,$4.upcase,$5]
end
Run Code Online (Sandbox Code Playgroud)

我认为这是因为p在第二种情况下它会消除阻塞.当我添加p内部块时,事情变得清晰.来自第一个块的数据打印2次,而来自第二个的数据根本没有被打印.

p "rubyisacoollanguage".gsub(/(ruby)(is)(a)(cool)(language)/) {
   p "one " + $1.capitalize + " %s %s %s %s!" % [$2,$3,$4.upcase,$5]
}
p "rubyisacoollanguage".gsub(/(ruby)(is)(a)(cool)(language)/) do
    p "two " + $1.capitalize …
Run Code Online (Sandbox Code Playgroud)

ruby block

1
推荐指数
1
解决办法
41
查看次数