데이터 타입을 처리, 결과를 누적

2024. 11. 28. 15:28정보처리,전산/Python

반응형

 

def process_data(data):
    result = ""  # 결과를 담을 변수 초기화
    for item in data:
        if isinstance(item, int):  # 정수일 경우
            result += str(item * 2)  # 정수에 2를 곱한 값을 문자열로 변환하여 추가
        elif isinstance(item, str):  # 문자열일 경우
            result += item[::-1]  # 문자열을 뒤집어서 추가
        elif isinstance(item, list):  # 리스트일 경우
            result += str(len(item))  # 리스트의 길이를 문자열로 변환하여 추가
    return result  # 최종 결과 반환


# 입력 데이터
input_data = [3, "hello", [1, 2, 3], 7, "world", [4, 5]]

# 함수 호출 및 결과 출력
print(process_data(input_data))

코드 설명

  1. 함수 정의:
    • 함수 process_data(data)는 다양한 데이터 타입이 포함된 리스트를 처리한다.
    • result 문자열을 초기화하여 결과를 누적한다.
    • 반복문을 통해 data 리스트의 각 요소를 처리:
      • int 타입: 값에 2를 곱하고 문자열로 변환하여 result에 추가.
      • str 타입: 문자열을 뒤집어서 result에 추가.
      • list 타입: 리스트의 길이를 계산하고 문자열로 변환하여 result에 추가.
    • 처리된 결과를 반환.
  2. 입력 데이터:
  3. input_data = [3, "hello", [1, 2, 3], 7, "world", [4, 5]]
  4. 출력 형식:
    • 각 요소가 처리된 후 result에 누적된 값이 문자열로 출력된다.

데이터 처리 과정

입력 데이터:

정리된 데이터 처리 과정

입력 데이터:
[3, "hello", [1, 2, 3], 7, "world", [4, 5]]

처리 과정 및 결과

  1. 3 (정수):
    • 3 * 2 = 6
    • result는 "6"이 된다.
  2. "hello" (문자열):
    • 문자열을 뒤집으면 "olleh"
    • result는 "6olleh"가 된다.
  3. [1, 2, 3] (리스트):
    • 리스트의 길이는 3
    • result는 "6olleh3"가 된다.
  4. 7 (정수):
    • 7 * 2 = 14
    • result는 "6olleh314"가 된다.
  5. "world" (문자열):
    • 문자열을 뒤집으면 "dlrow"
    • result는 "6olleh314dlrow"가 된다.
  6. [4, 5] (리스트):
    • 리스트의 길이는 2
    • result는 "6olleh314dlrow2"가 된다.

출력 결과

6olleh314dlrow2
 
 

 

 

반응형

'정보처리,전산 > Python' 카테고리의 다른 글

Actual, Formal Parameter  (1) 2024.12.01
palindrome  (0) 2024.11.28
재귀와 메모이제이션을 활용한 수열 계산  (0) 2024.11.28
Class 에서 init self 사용  (0) 2024.11.14
np.outer  (1) 2024.10.22