There is now the option for one player mode, which is good for people to hone skills, and whatnot, but can you get achievements/drops in One Player? If so: how?
In "offline practice mode" (where you play against bots):
- Statistics (e.g. longest life) are turned off
- Achievements cannot be received
- Item drops are possible
Source: official tf2 wiki, and also verified by personal experience.
You cannot get achievements from the one player mode.
However, you can create an otherwise empty server to "farm" achievements (though, understandably, many of the achievements require at least two people), and you can even unlock achievements via LAN games.
It is possible to get achievements using the "map" and the "tf_bot_add" commands. However, when using the practice mode, achievements are not possible.