There’s no reason it should be ‘who’—the answer might, for example, be a Somersby Wild Cactus bottle, which is not a person. (Obviously, the answer is a giraffe; but using ‘what’ simply gives a wider scope of options)
–
Janus Bahs JacquetJul 19 '13 at 10:28

1

Why do you think it should be who?
–
user57234Jul 19 '13 at 10:42

1

"Who" would suggest that the answer should be a person, not an animal.
–
TrevorDJul 19 '13 at 10:49

If the question is asking for a specific individual, usually someone or something that can be named, then "who" is appropriate. It often implies a human specific individual, but named animals could also suffice.

If the question is asking for a more general answer, what is more appropriate.

Example: Who ate the pie? Megan did. Spot the dog did. That elephant over there did it!

I think there are actually a few reasons who is not the better choice:

As Akshat and Janus Bahs Jacquet both pointed out, you can leave the options more open by not removing objects that might also meet the definition.

By using who, there is general a specific who (Him, Tom, the elephant in the room). It would awkward grammatically to have a conversation: "Who ate my petunias?" and the response "An elephant". Who expects a specific body, in general.

Who could work in your example, but I think what is the better word choice.

-1 "Who" could not work! As @Akshat says, using "who" indicates that you are expecting the answer to be a person - not an animal.
–
TrevorDJul 19 '13 at 12:29

@TrevorD "Who ate my homework? Spot the dog did." is correct and is for an animal not a person.
–
AthomSfereJul 19 '13 at 15:54

If you anthropomorphise an animal enough to enable it to use a first-person pronoun (i.e., give it speech), them you anthropomorphise it enough to be referable to as ‘who’.
–
Janus Bahs JacquetJul 20 '13 at 0:41

@JanusBahsJacquet but Spot ate the homework is not anthropomorphizing. Similarly, if you left your dinner in a room of 4 different animals Lets say a giraffe, a dog, a cat and an elephant and you were asked to hypothesize: a) Who ate the dinner vs b)What at the dinner...
–
AthomSfereJul 20 '13 at 1:43

My comment was in reply to Trevor’s statement that ‘who’ would not work. If I left my dinner to vanish in a room with four animals, I would hypothesise, “Who ate my dinner?” as well.
–
Janus Bahs JacquetJul 20 '13 at 8:36