2010-07-29 3 views
4

나는이 포함 된 오히려 큰 튜플이 있습니다하우투 파이썬에서 튜플에서 간단한 문자열을 추출 (초보자 질문)

[('and', 44023), ('cx', 37711), ('is', 36777) .... ] 

난 그냥 단일 따옴표로 구분 된 첫 번째 문자열을 추출 할을, 그래서의 출력 튜플 위의 값은 다음과 같습니다.

and 
cx 
is 

(확장 성은 어느 정도 내장되어 있습니까?) 어떻게 코딩합니까?

+0

같은 개행 chararcter 가입 join 방법 문자열과 함께 지능형리스트를 사용하여 정확한 결과를 얻고 싶다면 귀하의 질문에 대한 답변은 –

답변

4

그냥 솔루션에 대체 방법을 제공 :

for word, count in mytuple: 
    print "%r is used %i times!" % (word, count) 

당신이 파이썬 문서에서 광범위하게 사용되는 볼 수 있습니다 Matthew.

tuples = [('and', 44023), ('cx', 37711), ('is', 36777) .... ] 
strings, numbers = zip(*tuples) 

이 경우 당신은 어떤 점에서 별도의 시퀀스에서 튜플의 두 부분을 (두 지능형리스트를 피할 수) 원하는 결정합니다.

+0

귀하의 목록이 정말로 큰 경우, 귀하의 메모리 요구량이 두 배로 증가합니다. – bukzor

13
[tup[0] for tup in mylist] 

이것은 목록 이해력을 사용합니다. 바깥 괄호 대신 괄호를 사용하여 생성자의 이해도를 높일 수 있으므로 평가가 지연 될 수 있습니다.

+1

+1이며 발전기 이해에 대한 참고 사항입니다. 그 방법으로 효과가 있었는지 몰랐습니다. – mpen

+1

+1 발전기 사용. 발전기 사용을 위해 – awesomo

+0

-1. Python -c 'import this' – bukzor

1

당신은

and 
cx 
is 

는 다음의 진드기를 클릭하십시오 지금

yourList = [('and', 44023), ('cx', 37711), ('is', 36777)] 
print '\n'.join([tup[0] for tup in yourList])