2015-01-21 5 views
0

목록을 문자열로 변환 한 다음 역 과정을 수행해야합니다. 한 스크립트는 List-> String으로 변환하고 다른 스크립트는 String-> List로 변환하므로 변수에 목록을 저장하는 것은 해결책이 아닙니다. split (',') 또는 유사한 것을 사용하는 것은 모든 경우에 대한 해결책이 아닙니다. 그래서, 좋은 연습이 아닌 간부() 내장 함수를 사용하지만, 사람들은 말한다 :목록에있는 문자열 목록으로 파이썬 3

l = ['ab,.cd\'ac"', b'\x80', '\r\nHi, !', b'\x01'] 
str_l = str(l) 

내가 일 한 가지를 시도 : 그래서하는 시도 성공으로 나는 다음과 같은 예에서 변환을 수행하는 여러분을 초대합니다 나는 너에게 다른 대안을 주라고 너를 초대한다. 또한 나는 함수 내에서() 간부를 사용하는 데 문제가 있지만, 그건 당신이 확인할 수있는 또 다른 질문 ->이 작동합니다 Using exec() inside a function Python 3

답변

0

:

당신에게 당신의 첫 번째 문자열을 제공
str_l = ("|").join(l) 

. 그 다음 :

l_2 = str_l.split("|") 

두 번째 목록을 제공합니다.

enter image description here

+0

그것은 첫째, 두 가지 이유로 실패 str_l = ("|") 이 형식 오류 발생시킵니다 (리터) 조인. > 역 추적 (가장 최근 통화 마지막) : 파일 "" , 줄 1, > > str_l = ("|") join (l) TypeError : 시퀀스 항목 1 : 예상 str 인스턴스, 바이트 발견 두 번째 것은 내 목록에 모든 종류의 기호가 포함되어 있습니다. 너는 단지 "|"을 사용할 수 없다. 실제 예제에서. 어쨌든 고마워! –

+0

나를 위해 일했습니다. 내 솔루션에 그림을 추가했습니다. –

+0

파이썬 3.4를 사용 중이며 2 행에 TypeError가 발생합니다. 또한 초기 목록과 다른 경우 (바이트가 문자열로 대체되었습니다) 위에서 말했듯이 | 실제 예제에는 모든 종류의 기호가 포함되어 있기 때문입니다. 다시 한번 감사드립니다! –

관련 문제