[파이썬] YAML 실행하기

     

    YAML 실행하기

     yaml 사용
    
    import yaml
    
    yaml_data = """
    
    color_def:
     - &col1 "#ff0000"
     - &col2 "#00ff00"
     - &col3 "#0000ff"
     
    color:
     title1: *col1
     title2: *col2
     title3: *col3
    
    """
    
    data = yaml.load(yaml_data)
    
    print("title1 = ", data["color"]["title1"])
    print("title2 = ", data["color"]["title2"])
    print("title3 = ", data["color"]["title3"])

     

     

     

    YAML 실행하기 2

    # YAML 데이터를 파이썬으로 읽어오기
    import yaml
    
    #yaml 데이터 정의
    
    yaml_data = """
    date: 2020-11-13 
    productList:
       - 
         id: 100
         name: banana
         color: yellow
         price: 1000
       -
         id: 200
         name: orange
         color: orange
         price: 700
       -
         id: 300
         name: apple
         color: red
         price: 1200
    """
    
    data = yaml.load(yaml_data)
    
    #이름과 컬러를 출력 코딩하세요. 
    for abc in data["productList"]:
        print("name = ", abc["name"]," color = ", abc["color"])

     

    JSON 형태의 데이터를 YAML로 변형해서 실행하기

    # YAML 데이터를 파이썬으로 읽어오기
    import yaml
    
    #yaml 데이터 정의
    
    person =[
    {"name":"HongGilDong", "age":"30", "gender":"man"},
    {"name":"KimMiSun", "age":"25", "gender":"woman"},
    {"name":"KangGilDong", "age":"40", "gender":"man"}
    ]
    
    #JSON 형식을 YAML형식으로 변형 시켜준다.
    yaml_data = yaml.dump(person)
    print(yaml_data)
    print("-------------------------------------")
    
    #YAML 데이터를 파이썬 데이터로 변환하기
    data = yaml.load(yaml_data)
    
    for person in data:
        print(person["name"])

     

     

    CSV 형태의 데이터를 YAML로 변형해서 실행하기

    prod_list.csv
    0.00MB

    해당 파일을 Jupiter에 넣은 후 실행을 해보았습니다.

     

    import codecs
    
    fileName = "prod_list.csv"
    csv = codecs.open(fileName, "r", "euc_kr").read()
    
    data = []
    records = csv.split("\r\n") #\r: CR \n:LF(new line)
    
    for rec in records:
        if rec == "": continue
        fields = rec.split(",")
        data.append(fields)
            
    for field in data:
        print(field[1], field[2])

     

    CSV 형태로 데이터 저장하기

    # 파이썬의 csv모듈을 이용한 CSV데이터처리방법
    
    # CSV파일에 있는 필드 데이터가 큰따옴표(")로 둘러 싸인 경우에는
    # CSV파일을 분석하기가 어렵다.
    
    # 따라서, 이때에는 csv모듈을 이용하는데
    # csv파일을 읽어올때 사용하는 메소드
    # csv.reader(파일포인터, delimiter="," , quotechar='"')
    
    # 여기서, delimiter는 구분문자를 지정하고, quotechar는 어떤 기호로 데이터를
    # 감싸고 있는지를 지정한다.
    
    # csv파일을 만들때 상용하는 메소드
    # csv.writer(파일포인터, delimiter=",", quotechar='"')
    # csv.reader(파일포인터, delimiter=",", quotechar='"')
    
    import csv, codecs
    
    with codecs.open("test.csv", "w", "utf-8") as fp:
        writer = csv.writer(fp, delimiter=",", quotechar='"')
        writer.writerow(["상품코드", "상품이름", "가격"])
        writer.writerow(["1", "KeyBoard", 20000])
        writer.writerow(["2", "Mouse", 10000])
        writer.writerow(["3", "Monitor", 100000])

     

     

    위에 적용한 데이터를 그대로 출력하기 (응용하기)

    import codecs
    
    fileName = "test.csv"
    csv = codecs.open(fileName, "r", "utf-8").read()
    
    data = []
    records = csv.split("\r\n") #\r: CR \n:LF(new line)
    
    for rec in records:
        if rec == "": continue
        fields = rec.split(",")
        data.append(fields)
            
    for field in data:
        print(field[0], field[1], field[2])

    반응형

    'Language > Python' 카테고리의 다른 글

    [Python] 1장 변수 사용하기  (0) 2023.07.24
    [Python] 파이썬 설치하기  (0) 2023.07.13
    [파이썬] json 데이터 출력하기  (0) 2020.11.13
    [파이썬] 네이버 api 빼오기  (0) 2020.11.12
    [파이썬] API 사용하기  (0) 2020.11.12

    댓글

    Designed by JB FACTORY