gpt4 book ai didi

python - Ruby 中的哈希值并将 python 转换为 ruby

转载 作者:太空宇宙 更新时间:2023-11-03 18:53:54 25 4
gpt4 key购买 nike

我在Ruby中使用Hash,只需检查某个单词是否在“pairs”类中并替换它们。最初我用 python 编写代码,想将其转换为我不熟悉的 ruby​​。这是我编写的 ruby​​ 代码。

import sys

pairs = {'butter' => 'flies', 'cheese' => 'wheel', 'milk'=> 'expensive'}

for line in sys.stdin:
line_words = line.split(" ")
for word in line_words:
if word in pairs
line = line.gsub!(word, pairs[word])

puts line

显示以下错误

syntax error, unexpected kIN, expecting kTHEN or ':' or '\n' or ';'
if word in pairs
^

下面是原始的 python 脚本,正确的是:

import sys

pairs = dict()

pairs = {'butter': 'flies', 'cheese': 'wheel', 'milk': 'expensive'}

for line in sys.stdin:
line = line.strip()
line_words = line.split(" ")
for word in line_words:
if word in pairs:
line = line.replace(word ,pairs[word])

print line

是因为“import sys”还是“缩进”?

最佳答案

试试这个:

pairs = {'butter' => 'flies', 'cheese' => 'wheel', 'milk'=> 'expensive'}

line = ARGV.join(' ').split(' ').map do |word|
pairs.include?(word) ? pairs[word] : word
end.join(" ")

puts line

这将循环遍历传递给脚本的每个项目,并返回单词或替换单词,并用空格连接。

关于python - Ruby 中的哈希值并将 python 转换为 ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17703956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com