하지만 난 can& 작동하잖아 리오스트린조 '와', '# 39, & # 39 이 기능을 사용하여 누마피' t 's' 겐프롬트스트 다음과 같습니다.
x="1 3\n 4.5 8"
numpy.genfromtxt(io.StringIO(x))
저도 다음 오류:
TypeError: Can't convert 'bytes' object to str implicitly
내가 언제 스트린조 '쓰기' 가져오기의 썻냐면
ImportError: No module named 'StringIO'
>. when i write 가져오기의 썻냐면 스트린조 등 모듈에서는 없다.
[의 새로운 기능 파이썬 3.0] 에서 1:
>. '와' 이 '스트린조 카스트린조' 모듈은 사라졌다. 임포트하십시오 '대신' 입출력 (i / o) >. 모듈에서는 리오스트린조 이오비트리오 '텍스트, 데이터 및 사용' '또는' >. 기록했다.
.
일부 파이썬 코드를 맞추기 것 또한 유용한 방법 2 작업하십시오 파이썬 3 (단서 조항 위험 부담):
try:
from StringIO import StringIO ## for Python 2
except ImportError:
from io import StringIO ## for Python 3
>. 참고: 이 예에서는 이 질문 및 tangential 수 주 호관련 스트린조 '실종' 는 보통 때 고려해야 할 것이 아니라 주소지정에 포함) 보다 직접판매용 솔루션 module. 메시지 'typeerror: # 39, & # 39 bytes& 변환하십시오 can& t # 39;; str 객체에는 암시적으로 'http://schmidt. devlib. [이 오토메이티드] (https://stackoverflow.com/a/11970414/86967).
나는 내 경우 사용합니다.
from io import StringIO
'3' 의 파이썬 누마피.겐프롬트스트 바이트입니다 스트리밍합니다 있을 것으로 기대하고 있다. 아래:
numpy.genfromtxt(io.BytesIO(x.encode()))
Op 단축시킵니다 로마 단축시킵니다 질문, 답변 감사합니다. 내가 이 검색 좀 찾을 수 있었다. 다음 다른 도움이 됐으면 좋겠다 "고 말했다.
참조: https://docs.scipy.org/doc/numpy/user/basics.io.genfromtxt.html
import numpy as np
from StringIO import StringIO
data = "1, abc , 2\n 3, xxx, 4"
print type(data)
"""
<type 'str'>
"""
print '\n', np.genfromtxt(StringIO(data), delimiter=",", dtype="|S3", autostrip=True)
"""
[['1' 'abc' '2']
['3' 'xxx' '4']]
"""
print '\n', type(data)
"""
<type 'str'>
"""
print '\n', np.genfromtxt(StringIO(data), delimiter=",", autostrip=True)
"""
[[ 1. nan 2.]
[ 3. nan 4.]]
"""
import numpy as np
from io import StringIO
import io
data = "1, abc , 2\n 3, xxx, 4"
#print(data)
"""
1, abc , 2
3, xxx, 4
"""
#print(type(data))
"""
<class 'str'>
"""
#np.genfromtxt(StringIO(data), delimiter=",", autostrip=True)
# TypeError: Can't convert 'bytes' object to str implicitly
print('\n')
print(np.genfromtxt(io.BytesIO(data.encode()), delimiter=",", dtype="|S3", autostrip=True))
"""
[[b'1' b'abc' b'2']
[b'3' b'xxx' b'4']]
"""
print('\n')
print(np.genfromtxt(io.BytesIO(data.encode()), delimiter=",", autostrip=True))
"""
[[ 1. nan 2.]
[ 3. nan 4.]]
"""
여기서 x =, = " 트리프 Sx".}, {1, 2, 3, 모든.
https://stackoverflow.com/questions/14790130/dtypes-difference-between-s1-and-s2-in-python
", s1 과 s2 문자열은 데이터 형식 설명자. 첫 번째로, 이는 길이가 1, 2 ." 어레이입니다 문장열 길이 있다.
사용할 수 있습니다. [스트린조] [1] 의 6 모듈에서는:
import six
import numpy
x = "1 3\n 4.5 8"
numpy.genfromtxt(six.StringIO(x))
[1]: https://pythonhosted.org/six/ # 식스스트린조
<! - 언어: 파이썬 - >.
import io
import numpy
x = "1 3\n 4.5 8"
numpy.genfromtxt(io.BytesIO(x.encode()))
출력:
<! - 언어: > 랑 없음 -;
array([[ 1. , 3. ],
[ 4.5, 8. ]])
윈도 3.x 대한 설명:
다만 'x' 는 파이썬 2.6/2.7 대한 에로남이네 바이트입니다 문자열 (가정) '에서' 를 사용하지 않는 unicode_literals future 가져오기의), 그리고 ' ()' 는 'x' 를 통해 인코딩합니다 바이트입니다 문자열이어야 여전히 같은 바이트입니다 구체화하십시오 아웃해야 것이다. 그 결과 동일합니다.
이후, 이 중 하나가 바로 ',' 에 관한 SO& # 39 의 가장 인기 있는 스트린조 here& # 39 에 대한 설명, 좀 더 다른 파이썬 버전을 가져오기의.
다음은 어떤 시행하십시오 클래스뿐만 문자열으로 반환하는 스트리밍합니다:
참고로 '있다', '다음' 에서 '가져와집니다 스트린지오스트린조 스트린조 가져오기의 스트린조 교체품으로 사용할 스트린조 (.)'. '너', 즉 '다음 중 하나를 사용하여 스트린조 임포트합니다 스트린지오스트린조 (.)'. 그냥 c 클래스 이름을 모듈에서는 이름과 같습니다. # 39 의 it& 비슷한 'datetime' 이쪽요.
따라 어떤 투자된 파이썬 버전을 사용할 수 있습니다.
또 다른 장점은 '가 지원되는 리오스트린조 사용하여' universal 줄 바꿈. 줄 바꿈 = & # 39, & # 39 전달하는 경우 인수 '키워드', '선' 에 대한 '\n 분할합니다 리오스트린조 수 있을 것', '또는' \r \r\n ','. 특히 '\r' 여행 'i found that' 스트린지오스트린조 증가한 것이다.
참고로 비트리오 가져올 경우 '' 에서 '6' '또는' 스트린조 확보하십시오 스트린지오스트린조 '에서' 클래스 '에서' i / o 에서 윈도 3.x 및 해당 윈도 2.x 저의 이전 paragraphs& 동의하는 경우 # 39. 평가, 실제로 이 경우 '한' 와 '대신' 입출력 (i / o 에서 6 단지 가져오기의 피해야 합니다.
[1]: https://docs.python.org/3/library/io.html # 이진 i / o [2]: https://docs.python.org/3/library/io.html # i / o 텍스트 [3]: https://docs.python.org/2/library/stringio.html # [4]: https://docs.python.org/2/library/stringio.html # 모듈에서는 카스트린조
Here 에서 참조용이므로 하기 위해 파이썬 3.5.2 작동합니까 다음과 같이 다시 쓸 수 있습니다
import io
data =io.BytesIO(b"1, 2, 3\n4, 5, 6")
import numpy
numpy.genfromtxt(data, delimiter=",")
데이터 파일의 내용을 변경할 수 있는 가장 큰 이유로 (바이트) 가 없는 때까지 어떻게든 텍스트에 디코딩할 수 있다. '' 보다 '더 나은 이름을' 겐프롬트스트 겐프롬비츠 수 있습니다.