2016-10-06 2 views
0

일부 셸 스크립팅을 제외한 프로그래밍 배경없이 Python을 처음 사용했습니다.목록에서 문자열을 추출하는 방법

내가 아래 목록에서 두 필드를 추출 할 : 여기 '제목을'원하고 '재생'과)는 다른 목록 예에 new_list =를 할당 [제목, 재생]

alist=[(0, 'title', 'TEXT', 0, None, 0), (1, 'plays', 'integer', 0, None, 0)] 
+0

항상 튜플의 두 번째 위치에 원하는 데이터입니까? – idjaw

+0

'new_list = [x alist에서 x에 대해 x [1]]'당신이 원하는 것은 무엇입니까? –

+0

사전을 사용해야합니다. 'dict = { "title": [0, "TEXT", 0, None, 0], "plays": [1, "재생", "정수", 0, 없음, 0]}' 'dict [ 'text']'할 수있는 값을 얻으면'[0, 'TEXT', 0, None, 0]'을 반환 할 것입니다. –

답변

3

간단한 방법은 물론, 그냥 할당 문 쓰기된다

new_list=['title','plays'] 

을하지만 당신은 아마 같은,보다 일반적인 질문을위한 "어떻게 내가이 목록의 첫 번째 두 개의 튜플에서 두번째 항목을 추출 할 수 있습니다?" 이렇게 :

new_list = [alist[0][1], alist[1][1]] 

또는 "어떻게하면 각 튜플의 두 번째 항목을 목록에서 추출 할 수 있습니까?" 그래서 같이 :

new_list = [t[1] for t in alist] 
+0

_ "가장 간단한 방법은 물론 지정 문을 써주는 것입니다."_ - 당신이 의미하는 바를 정확히 알았습니다.) 우스운 일을하려고합니다. –

2
alist = [(0, 'title', 'TEXT', 0, None, 0),(0, 'plays', 'integer', 0, None, 0)] 
new_list = [alist[0][1], alist[1][1]] 

확인하는,

print(new_list) 

설명

이 줄 :

alist = [(0, 'title', 'TEXT', 0, None, 0), (0, 'plays', 'integer', 0, None, 0)] 

위가 실제로 tuple 0 내부에. 따라서 alist 내부에는 두 개의 tuples이 있습니다. tuple 안에는 6objects이 있습니다.

그래서 alist[0]은 을 alist 안에 넣고 있음을 의미합니다. 및 alist[0][1]은 첫 번째 tuple 요소 인 second을 의미합니다. 이렇게하면 alist[1][1]도 생각할 수 있습니다.

+0

당신의 의견이 좀 이상하게 보일 것 같습니다 ..... –

+0

@ Mr.goosberry 고맙습니다 for information.removed it. :) –

+1

당신의 환영;) 왜 그런지는 모르겠지만'# '과 하나의 주석 사이에 공백을 두지 않으면 Stack Overflow가이를 주석으로 인식하지 못합니다. 나는이 버그를 메타에 가져 오기를 고려하고있다. –

관련 문제