?
사용자

Python 함수 리팩토링 제안받기 프롬프트

기존 Python 함수의 가독성, 효율성, 유지보수성을 개선하기 위한 리팩토링 아이디어를 AI에게 요청할 때 사용합니다. 복잡한 함수를 더 나은 코드로 만들고 싶을 때 유용합니다.

#python#refactoring#prompt#code optimization
recipe.sh
다음은 my_module.py 파일에 있는 calculate_metrics 함수입니다. 이 함수의 가독성, 효율성, 유지보수성을 개선하기 위한 리팩토링 방안을 제안해 주세요.

```python
def calculate_metrics(data):
    results = {}
    total_sum = 0
    count = 0
    for item in data:
        if item['value'] > 0:
            total_sum += item['value']
            count += 1
            if 'category' in item:
                if item['category'] not in results:
                    results[item['category']] = {'sum': 0, 'count': 0}
                results[item['category']]['sum'] += item['value']
                results[item['category']]['count'] += 1

    average = total_sum / count if count > 0 else 0
    
    category_averages = {}
    for category, metrics in results.items():
        category_averages[category] = metrics['sum'] / metrics['count'] if metrics['count'] > 0 else 0
        
    final_report = {
        'overall_average': average,
        'category_averages': category_averages
    }
    return final_report
```

리팩토링 시 고려할 점:

1.  **가독성**: 변수명, 로직 분리, 주석 추가 등을 통해 코드를 더 이해하기 쉽게 만드세요.
2.  **효율성**: 반복문 최적화, 불필요한 연산 제거 등을 통해 성능을 향상시키세요.
3.  **유지보수성**: 함수의 단일 책임 원칙 준수, 코드 중복 제거 등을 통해 수정 및 확장이 용이하게 만드세요.
4.  **Pythonic**: 파이썬의 내장 함수나 라이브러리를 활용하여 더 간결하고 효율적인 코드를 작성하세요.

제안하는 리팩토링 코드와 함께 각 변경 사항에 대한 설명을 덧붙여 주세요.
1
스크랩
6
좋아요
0
댓글
Python 함수 리팩토링 제안받기 프롬프트