파이썬에서 두 개의 변수 목록 비교

콘스탄틴

파이썬에 요소가있는 두 개의 목록이 있습니다. 이 두 목록에서 몇 가지 검사를 수행하고 싶습니다. 내 목록은 다음과 같습니다.

list_A = [["'EASY'", "'LEVEL_C'", "'4'", '0.714', '\n'], ["'EASY'", "'LEVEL_D'", "'5'", '0.778', '\n'], ["'EASY'", "'LEVEL_D'", "'5'", '0.226', '\n'], ["'EASY'", "'LEVEL_D'", "'5'", '0.222', '\n'], ...]
list_B = [["'EASY'", "'LEVEL_B'", "'2'", '1.000', '\n'], ["'EASY'", "'LEVEL_C'", "'3'", '1.000', '\n'], ["'EASY'", "'LEVEL_D'", "'4'", '1.000', '\n'], ["'EASY'", "'LEVEL_D'", "'4'", '0.290', '\n'], ...]

변수 "EASY"및 값 (LEVEL_A-LEVEL_F)을 사용하는 변수 수준의 경우 점수 (1-6) 및 신뢰 변수 (0-1)에 해당하는 세 번째 변수가 있습니다. 내가 원하는 것은 easy와 level 변수에 대한 두 목록을 비교하고 모든 경우에 두 목록 (list_A 및 list_B) 중 어떤 것이 더 높은 점수를 갖고 어떤 신뢰를 갖는지 찾는 것입니다. 어떻게 할 수 있습니까?

규칙을 구성하는 방식은 처음에 실행 파일에서 파생 된 행을 가져 와서 목록으로 필터링했습니다. 내 목록의 벡터 예는 다음과 같습니다.

Rule: ('EASY', 'LEVEL_E') ==> ('4') , 0.182 
'EASY' 'LEVEL_E' '4'  0.182 
["'EASY'",  "'LEVEL_E'", , "'4'", '0.182', '\n']

벡터를 만드는 데 사용하는 코드 :

 for row in my_lines:
   print row
   row = re.sub('[()]', "", row)
   row = row.replace("Rule: ", "")
   row = row.replace(",", "")
   row = row.replace("==>", "")
   print row
   split = re.split(r' +', row)
   print split

그런 다음 목록을 생성하자마자 변수 Level에 해당하는 두 번째 요소로 정렬합니다.

list_A.sort(key=lambda x: x[1])
list_B.sort(key=lambda x: x[1])

편집 : 변수 수준으로 목록을 정렬했습니다. 이제 모든 변수 수준의 점수와 관련하여 두 목록을 비교하고 싶습니다. 레벨이 존재하지 않는 경우 점수는 0이고 동일한 점수가 두 번 존재하면 시스템은 가장 신뢰도가 높은 점수를 선호합니다. 변수 수준에 대해 가능한 모든 값을 어떻게 비교할 수 있습니까?

콘스탄틴

내 질문에 대한 마지막 해결책은 문자열에 대해 간단한 정렬을 사용하여 목록을 정렬 한 다음 비교를 수행 할 수 있도록 두 목록을 압축하는 것입니다. 사용 된 코드는 다음과 같습니다.

list_A.sort(key=lambda x: x[1])
list_B.sort(key=lambda x: x[1])
res = zip(list_A, list_B)

그러나 이전 답변에서 제안한 사전 솔루션이 목록을 사용하는 것보다 더 효율적인 것 같습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

파이썬에서 두 개의 큰 목록 비교

분류에서Dev

두 개체의 목록 수 비교 C #

분류에서Dev

파이썬에서 두 개의 중첩 된 목록의 교차

분류에서Dev

자이 썬에서 두 목록의 요소 비교

분류에서Dev

두 개의 큰 목록에서 항목 비교

분류에서Dev

파이썬에서 두 목록을 비교하고 결과를 별도의 목록에 저장

분류에서Dev

파이썬에서 두 목록의 합 교차

분류에서Dev

자바에서 두 개의 큰 목록 비교

분류에서Dev

Java에서 두 개의 링크 된 목록 비교

분류에서Dev

두 개의 고르지 않은 목록의 차이점 비교

분류에서Dev

두 개체 목록 비교

분류에서Dev

파이썬에서 두 사전 목록 비교

분류에서Dev

Jquery에서 두 매개 변수 비교

분류에서Dev

Mockito : 두 목록의 assertEquals, 객체 변수 비교

분류에서Dev

파이썬-두 목록 비교

분류에서Dev

Python-두 개의 다른 목록 내에서 하위 목록 비교

분류에서Dev

파이썬은 튜플의 두 목록을 반복하고 tem 사이의 정수를 비교합니다.

분류에서Dev

Python : 두 개의 dict 목록 비교

분류에서Dev

두 개의 연결된 목록 비교

분류에서Dev

두 목록의 Python 비교

분류에서Dev

두 목록의 복잡한 비교에서 목록 만들기

분류에서Dev

파이썬에서 두 목록의 값을 비교하는 방법은 무엇입니까?

분류에서Dev

xslt : 두 목록 변수 비교

분류에서Dev

두 개의 다른 목록을 비교하는 목록 이해력

분류에서Dev

파이썬에서 두 개의 scipy.sparse 행렬 비교

분류에서Dev

임의 길이의 Python 목록의 임의 개수 비교

분류에서Dev

두 개의 tm (ctime에서) 변수를 비교하는 방법

분류에서Dev

파이썬에서 목록 (목록 목록)의 목록 교차

분류에서Dev

AWK-- 두 개의 다른 파일에있는 두 변수의 값 비교

Related 관련 기사

  1. 1

    파이썬에서 두 개의 큰 목록 비교

  2. 2

    두 개체의 목록 수 비교 C #

  3. 3

    파이썬에서 두 개의 중첩 된 목록의 교차

  4. 4

    자이 썬에서 두 목록의 요소 비교

  5. 5

    두 개의 큰 목록에서 항목 비교

  6. 6

    파이썬에서 두 목록을 비교하고 결과를 별도의 목록에 저장

  7. 7

    파이썬에서 두 목록의 합 교차

  8. 8

    자바에서 두 개의 큰 목록 비교

  9. 9

    Java에서 두 개의 링크 된 목록 비교

  10. 10

    두 개의 고르지 않은 목록의 차이점 비교

  11. 11

    두 개체 목록 비교

  12. 12

    파이썬에서 두 사전 목록 비교

  13. 13

    Jquery에서 두 매개 변수 비교

  14. 14

    Mockito : 두 목록의 assertEquals, 객체 변수 비교

  15. 15

    파이썬-두 목록 비교

  16. 16

    Python-두 개의 다른 목록 내에서 하위 목록 비교

  17. 17

    파이썬은 튜플의 두 목록을 반복하고 tem 사이의 정수를 비교합니다.

  18. 18

    Python : 두 개의 dict 목록 비교

  19. 19

    두 개의 연결된 목록 비교

  20. 20

    두 목록의 Python 비교

  21. 21

    두 목록의 복잡한 비교에서 목록 만들기

  22. 22

    파이썬에서 두 목록의 값을 비교하는 방법은 무엇입니까?

  23. 23

    xslt : 두 목록 변수 비교

  24. 24

    두 개의 다른 목록을 비교하는 목록 이해력

  25. 25

    파이썬에서 두 개의 scipy.sparse 행렬 비교

  26. 26

    임의 길이의 Python 목록의 임의 개수 비교

  27. 27

    두 개의 tm (ctime에서) 변수를 비교하는 방법

  28. 28

    파이썬에서 목록 (목록 목록)의 목록 교차

  29. 29

    AWK-- 두 개의 다른 파일에있는 두 변수의 값 비교

뜨겁다태그

보관