Falha ao obter dados usando read () de StringIO em python

Usando a versão Python2.7. Abaixo está o meu código de amostra.

<code>import StringIO
import sys

buff = StringIO.StringIO()
buff.write("hello")
print buff.read()
</code>

no programa acima, read () não me retorna nada onde getvalue () me retorna "hello". Alguém pode me ajudar na correção do problema? Eu preciso ler () porque meu código a seguir envolve a leitura de "n" bytes.

questionAnswers(2)

yourAnswerToTheQuestion