Gemini Enterprise를 사용하여 새 코드를 생성하고 기존 코드를 리팩터링할 수 있습니다.
프롬프트 예시
채팅 상자에 다음과 같은 프롬프트를 입력합니다.
Can you generate a Python function to parse a JSON file and extract specific
keys? Also, can you refactor the code in the attached file to improve its
readability and efficiency?
출력 예
이 프롬프트에 대한 응답으로 Gemini Enterprise는 다음과 유사한 출력을 생성합니다.
예. 두 요청 모두 도와드릴 수 있습니다.
먼저 JSON 파일을 파싱하고 지정된 키 목록을 추출하는 범용 Python 함수가 있습니다. 여기에는 누락된 파일 또는 잘못된 JSON 콘텐츠와 같은 일반적인 문제에 대한 오류 처리가 포함되어 있습니다.
JSON 파싱 및 키 추출 함수
import json def extract_keys_from_json(file_path, keys_to_extract): """ Parses a JSON file and extracts values for a specific list of keys. Args: file_path (str): The path to the JSON file. keys_to_extract (list): A list of strings representing the keys to extract. Returns: dict: A dictionary containing the extracted keys and their values. Returns an empty dictionary if the file is not found or is invalid. """ extracted_data = {} try: with open(file_path, 'r') as f: data = json.load(f) # ...
리팩터링된 코드
제공된
hi.py파일의 리팩터링된 버전은 다음과 같습니다. 주요 개선사항은 깊이 중첩된if문을 삭제하여 코드를 더 안전하고 읽기 쉽게 만드는 데 중점을 둡니다.이 버전에서는
.get()메서드를 사용합니다. 이 메서드는 존재하지 않을 수 있는 딕셔너리 키에 액세스하는 더 'Pythonic'한 방법입니다. 이를 통해KeyError예외를 방지하고 코드를 더 평면적이고 쉽게 따라갈 수 있습니다.import json def update_user_status_refactored(json_data): """ Parses user data, updates status, and handles nested keys safely. """ data = json.loads(json_data) # Safely get the email using .get() to avoid errors if keys are missing # .get('user', {}) returns an empty dict if 'user' is not found email = data.get('user', {}).get('details', {}).get('email') if email: print(f"Processing user: {email}") # Update the user status if 'user' in data: # ...