2013-05-23 3 views
-2

는 TextFile.txt 파일에는 다음이 포함파이썬 프로그램에서 배열에 일반 텍스트 목록을 변환

1 one  
2 two  
3 three  
4 four  
5 five 

파이썬 프로그램 :

file = open ("x.txt", "r") 
for item in file: 
    x = item.split ('\s') 
import numpy as np 
a = np.array (x) 
print (a) 

결과 :

['5 five'] 

그러나 싶어 얻을 TextFile.txt의 모든 요소를 ​​배열로 반환합니다. 같은 것을 달성하는 방법?

+1

당신은 하나의 배열의 모든 요소를 ​​원하는

다음은 문제를 해결? 배열의 배열? 예상 출력을 쓸 수 있습니까? – Dhara

답변

2
with open('x.txt') as f: 
    print np.loadtxt(f, dtype=str, delimiter='\n') 

['1 one' '2 two' '3 three' '4 four' '5 five'] 
4

귀하의 문제는 파일의 각 요소를 통해 루프하지만 각 요소를 저장하지, 그럼 당신은 배열에 마지막 요소를 변환하는 것입니다.

import numpy as np 

file = open ("a.txt", "r") 
x = [] 
for item in file: 
    x.append(item.split ('\s')) # Process the item here if you wish before appending 
a = np.array(x) 
print(a) 
0

또 다른 옵션은 numpy.genfromtxt이다, 예컨대 :

import numpy as np 
np.genfromtxt("TextFile.txt",delimiter='\n',dtype='|S10') 

가 제공합니다 :

array(['1 one', '2 two', '3 three', '4 four', '5 five'], 
    dtype='|S10') 
관련 문제