?
사용자

Python 코드 리팩토링: 가독성, 효율성, 유지보수성 향상 AI 프롬프트

기존 Python 코드의 가독성, 효율성, 유지보수성을 개선하고 싶을 때 사용하세요. AI에게 코드 개선 방안을 제안받아 개발 생산성을 높일 수 있습니다.

#python#refactoring#ai#code quality#prompt engineering
recipe.sh
당신은 Python 코드 리팩토링 전문가입니다. 다음 Python 코드를 분석하여 가독성, 효율성, 유지보수성 측면에서 개선할 수 있는 부분을 찾고, 구체적인 리팩토링 제안과 함께 수정된 코드를 제공해주세요.

**개선 목표:**
1.  **가독성 향상:** 변수명, 함수명 개선, 주석 추가, 코드 구조화 등
2.  **효율성 증대:** 알고리즘 최적화, 불필요한 연산 제거, 라이브러리 활용 등
3.  **유지보수성 강화:** 모듈화, 함수 분리, 객체 지향 설계 적용 등
4.  **Pythonic 코드:** Python 언어의 특성을 살린 간결하고 명확한 코드 작성

**리팩토링할 Python 코드:**
```python
{{python_code}}
```

**추가 요구사항 (선택 사항):**
*   특정 라이브러리 (예: `numpy`, `pandas`) 사용을 고려해주세요: {{preferred_libraries}}
*   최적화 우선순위: {{optimization_priority}} (예: 성능, 메모리 사용량, 코드 길이)
*   코드의 특정 부분에 대한 집중적인 개선을 원한다면 명시해주세요: {{specific_focus}}

**출력 형식:**
1.  **분석 및 제안:** 각 개선 목표별로 발견된 문제점과 구체적인 리팩토링 제안을 설명합니다.
2.  **수정된 코드:** 제안된 내용을 반영하여 리팩토링된 Python 코드를 제공합니다.
3.  **변경 사항 요약:** 주요 변경 사항과 그 이유를 간략하게 요약합니다.

**예시 입력:**
```python
def process_data(data_list):
    result = []
    for item in data_list:
        if item % 2 == 0:
            temp = item * item
            result.append(temp)
    return result
```

**예시 기대 출력:**
```text
**분석 및 제안:**

1.  **가독성 향상:**
    *   'data_list' 대신 'numbers'와 같이 좀 더 명확한 변수명을 사용할 수 있습니다.
    *   'temp' 변수는 불필요하며, 바로 append 할 수 있습니다.
    *   기능을 함수로 분리하면 재사용성이 높아집니다.

2.  **효율성 증대:**
    *   List Comprehension을 사용하면 코드가 더 간결하고 Pythonic해지며, 종종 더 효율적입니다.

3.  **유지보수성 강화:**
    *   현재 코드는 단순하여 큰 문제가 없으나, 복잡해질 경우 함수 분리가 필수적입니다.

**수정된 코드:**
```python
def get_even_squares(numbers):
    """주어진 숫자 리스트에서 짝수의 제곱값만 포함하는 리스트를 반환합니다."""
    return [num * num for num in numbers if num % 2 == 0]
```

**변경 사항 요약:**
*   List Comprehension을 사용하여 코드를 한 줄로 압축하고 가독성과 효율성을 높였습니다.
*   'process_data'를 'get_even_squares'로 변경하여 함수의 목적을 명확히 했습니다.
*   Docstring을 추가하여 함수 사용법을 설명했습니다.
```
8
스크랩
16
좋아요
0
댓글
Python 코드 리팩토링: 가독성, 효율성, 유지보수성 향상 AI 프롬프트