python 데이터 형식 관련 지식 확장

1. 원조 명명


python의 기초에서 우리가 원조를 배울 때 원조 내부의 요소를 추출하는 것은 모두 색인을 통해 값을 추출하는 것이다.그러나 이런 평가 방식은 우호적이지 않기 때문에 우리는 원조를 명명하는 방식을 도입하여 원조에 대해 사전식 평가를 하는데 이런 방식은 사전 저장이 차지하는 메모리보다 적다.데이터에 변화가 필요하지 않으면 사전을 원조로 명명할 수 있다.
일반적인 원조 평가 방식:

info = ("flora", 28, " ")
name = 0
age = 1
gender = 2

print(info[name])  #  
print(info[age])  #  
print(info[gender])  #  
원본 이름 지정 방법:

# namedtuple:  : ,  
from collections import namedtuple

info = namedtuple("info_key", ["name", "age", "gender"])
info_01 = info("flora", 28, " ")

print(info_01.name)  #  
print(info_01.age)  #  
print(info_01.gender)  #  
print(info_01)  #  :info_key(name='flora', age=28, gender=' ')

2. 자동화 테스트 장면에서의 응용


excel에서 용례 데이터를 읽습니다. 첫 번째 줄의 헤더는 키입니다. 한 줄의 값은value입니다.사전 형식으로 저장된 형식은 다음과 같습니다.

case = [
    {"case_id": 1,
     "case_title": " ",
     "data": "test",
     "expected": "pass"},
    {"case_id": 2,
     "case_title": " ",
     "data": "test",
     "expected": "pass"},
]
우리는 원조로 이름을 바꾸는 방식을 다음과 같이 저장할 수 있다.

# namedtuple:  : ,  
from collections import namedtuple

case = [
    {"case_id": 1,
     "case_title": " ",
     "data": "test01",
     "expected": "pass"},
    {"case_id": 2,
     "case_title": " ",
     "data": "test02",
     "expected": "pass"},
]

cases = namedtuple("case", case[0].keys())

for i in case:
    result = cases(*i.values())
    print(result.data)

#  : test01  test02

삼목 연산자


python의 세 가지 연산자는java의 세 가지 연산자에 해당한다.
  • 기본 문법
  • 조건 성립 실행 결과if 필터 조건else 조건 성립 실행 결과
  • 실제 응용
  • 예를 들어 우리는 파이썬 프로그램을 작성하고 두 개의 수를 입력하여 그것들의 크기를 비교하고 그 중에서 비교적 큰 것을 출력하려고 한다.일반적인 작법에 비해 삼목 연산자 작법은 더욱 간결하고 명확하다.
    일반 쓰기:
    
    x = int(input(" :"))
    y = int(input(" :"))
    
    if x == y:
        print(" :", x)
    elif x > y:
        print(" :", x)
    else:
        print(" :", y)
    
    세 개의 연산자 쓰기:
    
    x = int(input(" :"))
    y = int(input(" :"))
    
    print(" :{}".format(x if x > y else y))
  • 확장: 세 개의 연산자의 끼워넣기
  • Python 세 개의 연산자는 중첩을 지원하여 더욱 복잡한 표현식을 구성할 수 있다.끼워 넣을 때if와else의 배합에 주의해야 합니다.
    예를 들어 우리는 두 숫자의 관계를 판단해야 한다.
    일반 쓰기:
    
    a = int(input(" a:"))
    b = int(input(" b:"))
    
    if a > b:
        print("a b")
    else:
        if a < b:
            print("a b")
        else:
            print("a b")
    
    세 개의 연산자 중첩 쓰기:
    
    a = int(input(" a:"))
    b = int(input(" b:"))
    
    print("a b") if a > b else (print("a b") if a < b else print("a b"))

    4. 유도식

    
      comprehensions( ),  python  。 。
     : 。
    목록 유도식
  • 일반 목록 유도식
  • 기본 문법: [목록에 매번 추가되는 내용 for x in xxx]
    예: 0-100의 숫자로 구성된 목록을 출력합니다.
    일반 쓰기:
    
    li = []
    for i in range(101):
        li.append(i)
    print(li)
    유도식 쓰기:
    
    li = [i for i in range(101)]
    print(li)
  • 목록 유도식 끼워넣기if
  • 기본 문법: [목록에 매번 추가된 내용 for x in xxx if 필터 조건]
    예: 0-100의 짝수 숫자로 구성된 목록을 출력합니다.
    일반 쓰기:
    
    li = []
    for i in range(101):
        if i % 2 == 0:
            li.append(i)
    print(li)
    유도식 쓰기:
    
    li = [i for i in range(101) if i % 2 == 0]
    print(li)
  • 목록 유도식 결합 세 가지 연산자
  • 기본 문법: [if 필터 조건else 조건이 목록에 매번 추가되는 내용 for x in xxx]
    실례: 0-100개의 수, 짝수이면 짝수 0, 짝수이면 짝수 1을 되돌려줍니다.
    일반 쓰기:
    
    li = []
    for i in range(101):
        if i % 2 == 0:
            li.append(" 0")
        else:
            li.append(" 1")
    print(li)
    목록 유도식 + 세 개의 연산자:
    
    li = [" 0" if i % 2 == 0 else " 1" for i in range(101)]
    print(li)

    5. 사전 유도식


    기본 문법: {키: 값은 키 값의 표현식을 가져옵니다}
    실례: 하나의 목록 li가 있는데, 그를 하나의 원소 아래에 키로 표시하고, 값은 원소의 사전 형식의 데이터로 변환합니다.
    일반 쓰기:
    
    li = ["id", "title", "url", "data", "expected"]
    
    dic = {}
    for i, j in enumerate(li):
        dic[i] = j
    
    print(dic)
    사전 유도식 쓰기:
    
    li = ["id", "title", "url", "data", "expected"]
    
    dic = {i: j for i, j in enumerate(li)}
    
    print(dic)
    이python 데이터 형식에 대한 지식 확장에 관한 이 글을 소개합니다. 더 많은 python 데이터 형식에 대한 내용은 이전의 글을 검색하거나 아래의 관련 글을 계속 훑어보십시오. 앞으로 많은 응원 부탁드립니다!

    좋은 웹페이지 즐겨찾기