2014-09-11 11 views
-1

목록 목록 인 데이터 집합으로 작업하고 있습니다. 중첩 목록에있는 요소의 일부를 대체하려고합니다. 즉, 제거하려는 목록의 일부 요소 주위에 따옴표가 있습니다. 항목 목록이 아닌 문자열이기 때문에 물론Python에서 중첩 된 목록에 for 루프를 사용하여 replace()를 사용합니다.

for items in list: 
    for i in range(len(items)): 
     items[i] = items.replace("", '') 

, 이것은 오류가 발생합니다 :

여기에 지금까지 내 코드입니다. .replace 앞에 [i]를 추가해 보았습니다. 차이가 있는지 확인하지만 원하는 변경을하지는 않습니다. 필자는 파이썬과 코딩에 익숙하지 않으므로 통찰력을 좋아할 것입니다. 제 생각에 맞는 "종류"의 다른 사례가 대부분 제 이해보다 훨씬 앞선 것입니다.

도움이된다면 Python 2.7을 사용하고 있습니다. 미리 감사드립니다!

+0

당신이 목록의 목록의 구조의 예를 줄 수있는, 즉'X = [[1, 2 , 'hlleo', 'something', 0]]' – Jay

+1

** 목록은 내장 함수의 이름이기 때문에 자신의 시퀀스의 이름으로 사용하지 마십시오. –

답변

1

난 당신이 items[i] = items[i].replace('"', '')를 원한다고 생각하지만,이 조금이라도 청소기 수 있습니다 :

for sublist in lst: 
    sublist[:] = [s.replace('"', '') for s in sublist] 
+1

'replace ('' '', '')'? – Jay

+0

@Jay - 네. 고마워. – mgilson

+0

해피 도우미 : D – Jay

0
>>> l 
[['one', 'with"quote'], ['two', 'three', 'another"quote']] 

>>> for items in l: 
... for i in range(len(items)): 
...  items[i] = items[i].replace('"','') 
... 
>>> l 
[['one', 'withquote'], ['two', 'three', 'anotherquote']] 
관련 문제