Python Extraer datos del archivo

Tengo un archivo de texto solo digo

text1 text2 text text
text text text text

Busco contar primero el número de cadenas en el archivo (todas eliminadas por espacio) y luego generar los dos primeros textos. (texto 1 texto 2)

¿Algunas ideas?

Gracias de antemano por la ayuda

Edit: Esto es lo que tengo hasta ahora:

>>> f=open('test.txt')
>>> for line in f:
    print line
text1 text2 text text text text hello
>>> words=line.split()
>>> words
['\xef\xbb\xbftext1', 'text2', 'text', 'text', 'text', 'text', 'hello']
>>> len(words)
7
if len(words) > 2:
    print "there are more than 2 words"

El primer problema que tengo es que mi archivo de texto es: texto1 texto2 texto texto texto

Pero cuando saco la salida de las palabras, obtengo: ['\ xef \ xbb \ xbftext1', 'text2', 'text', 'text', 'text', 'text', 'hello']

¿De dónde proviene '\ xef \ xbb \ xbf?

Respuestas a la pregunta(1)

Su respuesta a la pregunta