【发布时间】:2016-10-01 18:44:52
【问题描述】:
我正在为 tumblr 制作一个笑话机器人,它会以“问候 [这里的提问者名字],小便。你真的,小屁孩。”的一些变体来回应提问者。我试图包含 4 个可能的响应,而不是一个包罗万象的响应,这是我遇到障碍的地方。这是我当前的机器人的全部代码(机器人是在 Ubuntu 中使用 Ruby 编写的):
require 'tumblr_client'
USERNAME = "thepissbot"
def piss
# Authenticate via OAuth
client = Tumblr::Client.new({
:consumer_key => ENV['CONSUMER_KEY'],
:consumer_secret => ENV['CONSUMER_SECRET'],
:oauth_token => ENV['OAUTH_TOKEN'],
:oauth_token_secret => ENV['OAUTH_TOKEN_SECRET']
})
# Make the request
asks = client.submissions(USERNAME, limit: 5)['posts']
asks.each do |ask|
if ask ['type'] !='answer'
piss
return
response1 = "Greetings #{ask['asking_name']}, piss. Yours truly, Pissy Boy."
response2 = "Dear, #{ask['asking_name']}, piss. Love, Pissy Boy."
response3 = "Salutations #{ask['asking_name']}, piss. Sincerely, Pissy Boy."
response4 = "What's up, #{ask['asking_name']}? Piss. Your friend, Pissy Boy."
array=(response1 response2 response3 response4)
tags = "piss mail"
client.edit(USERNAME,
id: ask['id'],
answer: array,
state: 'published',
tags: tags
)
end
end
end
据终端称,这应该是“有效的”。但是,当我检查该机器人的收件箱时,我发送的测试问题仍未得到答复,这当然不是预期的行为。我认为这与我处理数组的方式有关。 这已经是 2 天的问题了......我觉得它应该非常简单,但我只是错过了一些东西。任何帮助将不胜感激。
【问题讨论】:
-
你能修复代码的缩进吗?
-
其实我就是这么写的……
-
...为什么?您是否按空格字符收费?
-
我之所以这样写是因为我还没有正确格式化它。我试图在格式化之前先让代码工作,因此我问这个问题。另外,不,我不相信我会被空白字符收费。
-
格式化不应该是你推迟的事情。您应该始终在编写代码时对其进行格式化。我现在就给你做,大概需要 20 秒。