I read an article in chess life about a man who won an significant open tournament even though he was unrated when he entered. He had practiced only against the computer.
I myself have learned a lot of what I know from computer programs. It is very difficult to find good players here and the computer is always available. From what I have read you learn most when you play against a player who is just a little better than you are. The computer allows you to control the level of play of your opponent. This is most effective when you opponent can tell you afterward what you did wrong and what you did right, so you will want to have the computer analyze the game afterward.
I would recommend also using books of games (or a database of games) where you can go over the analyzed games from players about your own strength. I have one of my grandfathers books which is a collection of games by Capablanca called "The Immortal Games of Cabablanca" the games early in his life helped me a great deal. I couldn't understand his later games enough to get much out of them.
To conclude I, you can learn from playing a computer. They will play at the set level of play and can analyze your games, however use other sources to help you advance as well.