하위 문자열을 포함하는 사전에 대해 목록의 하위 문자열에서 일치하는 값을 반환합니다.

jajao555

다음과 같은 사전 목록이 있습니다.

[{'cvid': '642', 'switch': '015ABC003999FR', 'uni': '5'},
 {'cvid': '523', 'switch': '017ABC001230FR', 'uni': '5'},
 {'cvid': '43', 'switch': '017ABC001231FR', 'uni': '2'},
 {'cvid': '45', 'switch': '500ABC005437FR', 'uni': '3'}]

또한 아래와 같은 값이 포함 된 목록이 있습니다.

[['000015ABC003999CIRC'], ['000017ABC001230CIRC'], ['000017ABC001231CIRC'], ['000015ABC000249CIRC'], ['000500ABC005437CIRC']]

{ 'switch': '015ABC003999FR'} 값에서 하위 문자열을 추출하고 값 000015ABC003999CIRC를 반환하여 { 'circ': '000015ABC003999CIRC'}와 동일한 사전에 추가하고 싶습니다.

나는 그 시나리오에 가까운 예를 찾을 수 없었다. 사전의 015ABC003999에 대한 정규식처럼 수행 한 다음 목록의 정규식에서도 일치시킬 수 있습니까? 또 다른 옵션은 앞쪽에 0을 추가하고 FR을 CIRC로 대체하는 값을 만드는 것이지만 일종의 확인으로 목록에 일치시키는 것이 좋습니다.

그런 다음 사전을 사용하여 아래와 같은 구성을 채 웁니다.

print('cfm service delete service ' + dic['switch'])
print('cfm mep create service ' + dic['circ'] + ' port ' +  dic['uni'] + ' type up vlan ' +  dic['cvid'] + ' mepid 3')
Shash Sinha

두 for 루프에서 둘 다 반복 할 수 있습니다. 다음을 switch사용하여 하위 문자열을 확인하기 전에 값 의 마지막 두 문자를 제거해야하는 것처럼 보입니다 in.

import json

data = [
          {
            "cvid": "642",
            "switch": "015ABC003999FR",
            "uni": "5"
          },
          {
            "cvid": "523",
            "switch": "017ABC001230FR",
            "uni": "5"
          },
          {
            "cvid": "43",
            "switch": "017ABC001231FR",
            "uni": "2"
          },
          {
            "cvid": "45",
            "switch": "500ABC005437FR",
            "uni": "3"
          }
        ]

lst = [['000015ABC003999CIRC'], ['000017ABC001230CIRC'], ['000017ABC001231CIRC'],
      ['000015ABC000249CIRC'], ['000500ABC005437CIRC']]

for d in data:
  switch_val_without_last_2_ch = d["switch"][:-2]
  for sub_lst in lst:
    val = sub_lst[0]
    if switch_val_without_last_2_ch in val:
      d["circ"] = val
      break

print(json.dumps(data, indent=2, sort_keys=False))

for dic in data:
  print(f'cfm service delete service {dic["switch"]}')
  print(f'cfm mep create service {dic["circ"]} port {dic["uni"]} type up vlan {dic["cvid"]} mepid 3')

산출:

[
  {
    "cvid": "642",
    "switch": "015ABC003999FR",
    "uni": "5",
    "circ": "000015ABC003999CIRC"
  },
  {
    "cvid": "523",
    "switch": "017ABC001230FR",
    "uni": "5",
    "circ": "000017ABC001230CIRC"
  },
  {
    "cvid": "43",
    "switch": "017ABC001231FR",
    "uni": "2",
    "circ": "000017ABC001231CIRC"
  },
  {
    "cvid": "45",
    "switch": "500ABC005437FR",
    "uni": "3",
    "circ": "000500ABC005437CIRC"
  }
]
cfm service delete service 015ABC003999FR
cfm mep create service 000015ABC003999CIRC port 5 type up vlan 642 mepid 3
cfm service delete service 017ABC001230FR
cfm mep create service 000017ABC001230CIRC port 5 type up vlan 523 mepid 3
cfm service delete service 017ABC001231FR
cfm mep create service 000017ABC001231CIRC port 2 type up vlan 43 mepid 3
cfm service delete service 500ABC005437FR
cfm mep create service 000500ABC005437CIRC port 3 type up vlan 45 mepid 3

repl.it 에서 시도

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

문자열에 배치 파일의 하위 문자열이 포함되어 있는지 확인하기 위해 하위 문자열을 사용하는 문제

분류에서Dev

주어진 문자열을 포함하는 셀의 왼쪽에 최대 값을 반환합니다.

분류에서Dev

sqlserver의 문자열에서 하위 문자열을 추출해야합니다.

분류에서Dev

문자열 목록을 반복하면서 특정 값을 검색하여 Python의 문자열 목록 내에서 일치하는 항목을 찾습니다.

분류에서Dev

숫자 값을 반환하기 위해 문자열이있는 목록에서 숫자 검색

분류에서Dev

기본 R을 사용하여 문자형 벡터에 대한 하위 목록 요소의 부분 문자열 일치에 의한 하위 집합 R 목록

분류에서Dev

문자열 목록에서 * 대신 알 수없는 하위 문자열을 검색합니다.

분류에서Dev

목록에있는 다른 문자열의 하위 문자열 인 문자열을 나열합니다.

분류에서Dev

asp.net의 확정 문자열 값을 포함하는 문자열 목록에서 항목을 가져 오려면 어떻게해야합니까?

분류에서Dev

하위 목록을 포함하는 문자열 목록 병합

분류에서Dev

Pandas는 다른 열에서 하위 문자열이 발견 된 행 목록을 반환합니다.

분류에서Dev

목록의 하위 문자열에서 문자열을 인쇄하는 Python

분류에서Dev

더 큰 목록 목록에서 일치하는 문자열을 기반으로 하위 목록 항목 추출

분류에서Dev

하위 문자열을 포함하는 문자열 집합에서 문자열을 찾는 빠른 방법

분류에서Dev

구분 된 문자열에서 하위 문자열이 대체 값과 일치하는 경우에만 구분 기호 사이의 하위 문자열을 교체합니다.

분류에서Dev

문자열 배열에서 지정된 문자를 포함하는 문자열 목록을 가져옵니다.

분류에서Dev

문자열에 하위 문자열이 포함 된 경우 해당 하위 문자열을 가져옵니다.

분류에서Dev

문자열의 각 문자에 대해 HashMap <String, String>에서 값을 검색하면 NULL이 반환됩니다.

분류에서Dev

목록의 문자열에 하위 문자열을 일치시키고 일치하는 각 인덱스를 기록합니다.

분류에서Dev

다른 문자열의 하위 문자열 인 경우 하위 집합 문자열을 목록에서 제거하는 방법

분류에서Dev

반드시 직접 일치하지 않고 다른 목록의 모든 문자열을 포함하는 하위 목록을 인쇄합니다.

분류에서Dev

Java에서 문자열을 반환하기 위해 float 전달

분류에서Dev

Javascript는 문자열에서 하위 문자열을 포함하지 않는 줄을 제거합니다.

분류에서Dev

Delphi-하위 문자열을 포함하는 문자열에 대해 ADOTable을 필터링하는 방법

분류에서Dev

사전 항목의 값을 문자열 목록에 병합하는 방법

분류에서Dev

필드로 그 문자열을 포함하는 객체의 목록에 문자열 목록을 변환

분류에서Dev

Python은 다른 목록의 하위 문자열을 포함하는 목록에서 요소를 제거합니다.

분류에서Dev

두 개의 다른 하위 문자열에 대한 문자열 배열을 검색하는 Excel의 함수

분류에서Dev

값 대체를 위해 문자열에서 정규식과 일치하는 항목이 있습니까?

Related 관련 기사

  1. 1

    문자열에 배치 파일의 하위 문자열이 포함되어 있는지 확인하기 위해 하위 문자열을 사용하는 문제

  2. 2

    주어진 문자열을 포함하는 셀의 왼쪽에 최대 값을 반환합니다.

  3. 3

    sqlserver의 문자열에서 하위 문자열을 추출해야합니다.

  4. 4

    문자열 목록을 반복하면서 특정 값을 검색하여 Python의 문자열 목록 내에서 일치하는 항목을 찾습니다.

  5. 5

    숫자 값을 반환하기 위해 문자열이있는 목록에서 숫자 검색

  6. 6

    기본 R을 사용하여 문자형 벡터에 대한 하위 목록 요소의 부분 문자열 일치에 의한 하위 집합 R 목록

  7. 7

    문자열 목록에서 * 대신 알 수없는 하위 문자열을 검색합니다.

  8. 8

    목록에있는 다른 문자열의 하위 문자열 인 문자열을 나열합니다.

  9. 9

    asp.net의 확정 문자열 값을 포함하는 문자열 목록에서 항목을 가져 오려면 어떻게해야합니까?

  10. 10

    하위 목록을 포함하는 문자열 목록 병합

  11. 11

    Pandas는 다른 열에서 하위 문자열이 발견 된 행 목록을 반환합니다.

  12. 12

    목록의 하위 문자열에서 문자열을 인쇄하는 Python

  13. 13

    더 큰 목록 목록에서 일치하는 문자열을 기반으로 하위 목록 항목 추출

  14. 14

    하위 문자열을 포함하는 문자열 집합에서 문자열을 찾는 빠른 방법

  15. 15

    구분 된 문자열에서 하위 문자열이 대체 값과 일치하는 경우에만 구분 기호 사이의 하위 문자열을 교체합니다.

  16. 16

    문자열 배열에서 지정된 문자를 포함하는 문자열 목록을 가져옵니다.

  17. 17

    문자열에 하위 문자열이 포함 된 경우 해당 하위 문자열을 가져옵니다.

  18. 18

    문자열의 각 문자에 대해 HashMap <String, String>에서 값을 검색하면 NULL이 반환됩니다.

  19. 19

    목록의 문자열에 하위 문자열을 일치시키고 일치하는 각 인덱스를 기록합니다.

  20. 20

    다른 문자열의 하위 문자열 인 경우 하위 집합 문자열을 목록에서 제거하는 방법

  21. 21

    반드시 직접 일치하지 않고 다른 목록의 모든 문자열을 포함하는 하위 목록을 인쇄합니다.

  22. 22

    Java에서 문자열을 반환하기 위해 float 전달

  23. 23

    Javascript는 문자열에서 하위 문자열을 포함하지 않는 줄을 제거합니다.

  24. 24

    Delphi-하위 문자열을 포함하는 문자열에 대해 ADOTable을 필터링하는 방법

  25. 25

    사전 항목의 값을 문자열 목록에 병합하는 방법

  26. 26

    필드로 그 문자열을 포함하는 객체의 목록에 문자열 목록을 변환

  27. 27

    Python은 다른 목록의 하위 문자열을 포함하는 목록에서 요소를 제거합니다.

  28. 28

    두 개의 다른 하위 문자열에 대한 문자열 배열을 검색하는 Excel의 함수

  29. 29

    값 대체를 위해 문자열에서 정규식과 일치하는 항목이 있습니까?

뜨겁다태그

보관