목록코딩 (53)
SeouliteLab
예제: def copy_file(source, destination): try: with open(source, 'rb') as f_source: with open(destination, 'wb') as f_dest: for line in f_source: f_dest.write(line) print("파일 복사가 완료되었습니다.") except FileNotFoundError: print("파일을 찾을 수 없습니다.") except IOError: print("파일을 복사하는 중 오류가 발생했습니다.") source_file = "source.txt" destination_file = "destination.txt" copy_file(source_file, destinati..
파이썬에서는 한 줄에 여러 예외를 처리하는 방법을 제공합니다. 이를 통해 코드를 간결하게 유지하고 예외 처리를 효율적으로 수행할 수 있습니다. 예제: try: # 예외가 발생할 수 있는 코드 result = 10 / 0 except (ZeroDivisionError, ValueError) as e: # 여러 예외를 한 줄에 처리 print("예외가 발생했습니다:", e) 설명: 위의 코드에서는 try-except 문을 사용하여 여러 예외를 한 줄에 처리하는 방법을 보여줍니다. try 블록에서는 예외가 발생할 수 있는 코드를 실행합니다. 이 예제에서는 0으로 나누는 연산을 시도하고 있습니다. except 블록에서는 여러 예외를 동시에 처리합니다. 괄호 안에 처리하고자 하는 예외를 나열하고, 각 예외에 대한..
파이썬에서는 딕셔너리를 값에 따라 정렬하는 기능을 제공합니다. 이를 통해 딕셔너리의 값을 기준으로 정렬된 새로운 딕셔너리를 생성할 수 있습니다. 예제: my_dict = {'apple': 3, 'banana': 5, 'orange': 2} sorted_dict = dict(sorted(my_dict.items(), key=lambda item: item[1])) print("값으로 정렬된 딕셔너리:", sorted_dict) 설명: 위의 코드에서는 sorted() 함수를 사용하여 딕셔너리를 값에 따라 정렬합니다. items() 메서드를 사용하여 딕셔너리의 키-값 쌍을 가져온 후, key 매개변수를 통해 정렬 기준을 설정합니다. 람다 함수를 사용하여 각 항목의 값..
파이썬에서는 for 루프를 사용하여 딕셔너리의 키-값 쌍을 순회할 수 있습니다. 이를 통해 딕셔너리의 각 요소에 접근하고 작업을 수행할 수 있습니다. 예제: my_dict = {'apple': 3, 'banana': 5, 'orange': 2} for key, value in my_dict.items(): print("과일:", key, "- 개수:", value) 설명: 위의 코드에서는 for 루프를 사용하여 딕셔너리의 각 요소를 순회합니다. items() 메서드를 사용하여 딕셔너리의 키-값 쌍을 가져옵니다. for 루프에서는 각 키-값 쌍을 key와 value 변수에 할당하여 사용합니다. 이렇게 하면 각 반복에서 딕셔너리의 키와 해당 값에 접근할 수 있습니다..
파이썬에서는 리스트를 특정 범위로 자를 수 있는 기능을 제공합니다. 이를 통해 리스트의 원하는 부분을 추출할 수 있습니다. 예제: my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # 인덱스 2부터 5까지의 요소 추출 sliced_list1 = my_list[2:6] print("인덱스 2부터 5까지의 요소:", sliced_list1) # 처음부터 인덱스 7까지의 요소 추출 sliced_list2 = my_list[:8] print("처음부터 인덱스 7까지의 요소:", sliced_list2) # 인덱스 3부터 마지막까지의 요소 추출 sliced_list3 = my_list[3:] print("인덱스 3부터 마지막까지의 요소:", sliced_list3) 설명: 위의 코드에서는..
파이썬에서는 중첩된 리스트를 펼치는 방법을 제공합니다. 이를 통해 중첩된 리스트를 한 번의 루프로 평탄화된 리스트로 변환할 수 있습니다. 예제: def flatten_list(nested_list): flattened_list = [] for sublist in nested_list: if isinstance(sublist, list): flattened_list.extend(flatten_list(sublist)) else: flattened_list.append(sublist) return flattened_list nested_list = [1, 2, [3, 4, [5, 6]], 7, [8, 9]] flattened = flatten_list(nested_list) print("펼쳐진 리스트:", ..
파이썬에서는 for 루프를 사용하여 리스트의 각 요소에 접근할 수 있습니다. 이를 통해 리스트의 요소와 해당 요소의 인덱스에 동시에 접근할 수 있습니다. 예제: my_list = ['apple', 'banana', 'orange', 'grape'] for index, value in enumerate(my_list): print("인덱스:", index, "값:", value) 설명: 위의 코드에서는 enumerate() 함수를 사용하여 리스트의 요소와 해당 요소의 인덱스에 접근합니다. enumerate() 함수는 인덱스와 요소를 순회 가능한 객체로 반환하여, for 루프에서 사용할 수 있습니다. for 루프에서는 각 요소와 해당 요소의 인덱스를 ..
파이썬에서는 중첩된 디렉터리를 안전하게 생성하는 방법을 제공합니다. 이를 통해 디렉터리가 이미 존재하는지 확인하고, 없는 경우 새로운 디렉터리를 만들 수 있습니다. 예제: import os def create_nested_directory(path): try: os.makedirs(path) # 디렉터리 생성 시도 print("디렉터리 생성 성공:", path) except FileExistsError: print("디렉터리 이미 존재함:", path) directory_path = "parent/child/grandchild" create_nested_directory(directory_path) 설명: 위의 코드에서는 os.makedirs() 함수를 사용하여 중첩된 디렉터리를 생성합니다. 이 함수는 ..
파이썬에서는 두 개의 딕셔너리를 합치는 간단한 방법이 있습니다. 이를 통해 두 딕셔너리의 키-값 쌍을 결합하여 새로운 딕셔너리를 생성할 수 있습니다. 예제: def merge_dictionaries(dict1, dict2): merged_dict = dict1.copy() # 첫 번째 딕셔너리를 복사하여 새로운 딕셔너리 생성 merged_dict.update(dict2) # 두 번째 딕셔너리의 키-값 쌍을 추가 또는 업데이트 return merged_dict dict1 = {'a': 1, 'b': 2} dict2 = {'b': 3, 'c': 4} merged = merge_dictionaries(dict1, dict2) print("합쳐진 딕셔너리..
파이썬을 사용하여 피라미드 패턴을 만들어보겠습니다. 이 패턴은 각 줄마다 별표(*)를 사용하여 피라미드 모양을 만들어내는 것입니다. 예제: def print_pyramid(rows): for i in range(rows): print(' ' * (rows - i - 1) + '*' * (2 * i + 1)) rows = 5 print_pyramid(rows) 설명: 위의 코드에서는 print_pyramid 함수를 정의합니다. 이 함수는 피라미드를 출력하기 위해 rows 개수의 줄을 생성합니다. 첫 번째 for 루프에서는 피라미드의 줄을 생성하고, 두 번째 for 루프에서는 공백과 별표를 출력합니다. 각 줄에서는 공백의 개수가 줄어들고, 별표의 개수가 증가하는 패턴을 가지고 있..