본문 바로가기
[업무 지식]/Python

[기초] Python

by 에디터 윤슬 2024. 10. 16.

목차

    변수

    • 무언가 담는 바구니와 같은 의미
    • 변수의 자료형
      • 정수(int)
      • 실수(float)
      • 문자열(str)
      • 리스트(list)
      • 튜플(tuple)
      • 딕셔너리(dict)

    파이썬의 내장함수

    • 이미 파이썬에서 만들어져 있는 함수

    https://docs.python.org/3/library/functions.html

     

    Built-in Functions

    The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(), a...

    docs.python.org

     

    리스트의 다양한 메서드(Methods)

    리스트란?

    1. 리스트(List)란?

    • 리스트는 파이썬에서 가장 자주 사용되는 데이터 구조 중 하나입니다. 여러 항목들을 담을 수 있는 가변(mutable)한 시퀀스(sequence)입니다.
    • 대괄호 **[ ]**를 사용하여 리스트를 만들 수 있습니다.

    2. 리스트의 기본 구조

    • 리스트는 여러 값을 순서대로 담을 수 있습니다.
    • 각 값은 쉼표로 구분되며, 대괄호 안에 들어갑니다.
    • append(): 리스트에 항목을 추가합니다.
    • extend(): 리스트에 다른 리스트의 모든 항목을 추가합니다.
    • insert(): 리스트의 특정 위치에 항목을 삽입합니다.
    • remove(): 리스트에서 특정 값을 삭제합니다.
    • pop(): 리스트에서 특정 위치의 값을 제거하고 반환합니다.
    • index(): 리스트에서 특정 값의 인덱스를 찾습니다.
    • count(): 리스트에서 특정 값의 개수를 세어줍니다.
    • sort(): 리스트의 항목들을 정렬합니다.
    • reverse(): 리스트의 항목들을 역순으로 뒤집습니다.

    슬라이싱

    my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
    # 1. 일부분만 추출하기
    print(my_list[2:5])   # 출력: [3, 4, 5]
    
    # 2. 시작 인덱스 생략하기 (처음부터 추출)
    print(my_list[:5])    # 출력: [1, 2, 3, 4, 5]
    
    # 3. 끝 인덱스 생략하기 (끝까지 추출)
    print(my_list[5:])    # 출력: [6, 7, 8, 9, 10]
    
    # 4. 음수 인덱스 사용하기 (뒤에서부터 추출)
    print(my_list[-3:])   # 출력: [8, 9, 10]
    
    # 5. 간격 설정하기 (특정 간격으로 추출)
    print(my_list[1:9:2]) # 출력: [2, 4, 6, 8]
    
    # 6. 리스트 전체를 복사하기
    copy_of_list = my_list[:]
    print(copy_of_list)   # 출력: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
    # 7. 리스트를 거꾸로 뒤집기
    reversed_list = my_list[::-1]
    print(reversed_list)  # 출력: [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
    # 리스트에서 홀수 번째 인덱스의 값들 출력하기
    my_list = [10, 20, 30, 40, 50, 60, 70, 80, 90]
    
    odd_index_values = my_list[1::2]
    print("홀수 번째 인덱스의 값들:", odd_index_values)  # 출력: [20, 40, 60, 80]

     

    정렬

    # 숫자로 이루어진 리스트 정렬 예시
    numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
    numbers.sort()
    print("정렬된 리스트:", numbers)  # 출력: [1, 1, 2, 3, 4, 5, 5, 6, 9]
    
    # 문자열로 이루어진 리스트 정렬 예시
    words = ['apple', 'banana', 'orange', 'grape', 'cherry']
    words.sort()
    print("정렬된 리스트:", words)  # 출력: ['apple', 'banana', 'cherry', 'grape', 'orange']
    
    # 내림차순으로 리스트 정렬 예시
    numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
    numbers.sort(reverse=True)
    print("내림차순으로 정렬된 리스트:", numbers)  # 출력: [9, 6, 5, 5, 4, 3, 2, 1, 1]
    
    # 리스트의 문자열 길이로 정렬 예시
    words = ['apple', 'banana', 'orange', 'grape', 'cherry']
    words.sort(key=len)
    print("문자열 길이로 정렬된 리스트:", words)  # 출력: ['apple', 'grape', 'banana', 'cherry', 'orange']

     

    튜플 사용법

    튜플이란?

    • 파이썬 튜플은 변경할 수 없는(immutable) 시퀀스(sequence) 자료형으로, 여러 개의 요소를 저장하는 컨테이너입니다.
    • 튜플은 리스트와 유사하지만, 한 번 생성된 이후에는 요소를 추가, 삭제, 수정할 수 없습니다.
    • 이러한 특성으로 인해 파이썬에서 데이터를 보호하고 싶을 때 주로 사용됩니다.
    • 튜플은 소괄호 ()를 사용하여 생성하며, 각 요소는 쉼표 ,로 구분됩니다. 아래는 간단한 튜플을 생성하는 예시입니다.
    # 튜플 생성
    my_tuple = (1, 2, 3, 4, 1, 2, 3)
    
    # count() 메서드 예제
    count_of_1 = my_tuple.count(1)
    print("Count of 1:", count_of_1)  # 출력: 2
    
    # index() 메서드 예제
    index_of_3 = my_tuple.index(3)
    print("Index of 3:", index_of_3)  # 출력: 2
    # 튜플을 리스트로 변경하기
    my_tuple = (1, 2, 3, 4, 5)
    my_list = list(my_tuple)
    print(my_list)  # 출력: [1, 2, 3, 4, 5]
    
    # 리스트를 튜플로 변경하기
    my_list = [1, 2, 3, 4, 5]
    my_tuple = tuple(my_list)
    print(my_tuple)  # 출력: (1, 2, 3, 4, 5)

     

    딕셔너리

    딕셔너리란?

    • 파이썬 딕셔너리는 키-값 쌍의 데이터를 저장하는 자료구조로, 중괄호 **{}**로 둘러싸여 있으며 각 요소는 쉼표로 구분됩니다.
    • 각 키는 유일해야 하지만 값은 중복될 수 있습니다. 파이썬 딕셔너리는 해시 테이블로 구현되어 있어 키를 사용하여 매우 빠르게 값을 찾을 수 있습니다.
    • 다음은 파이썬 딕셔너리의 기본 구조입니다
    my_dict = {
        'key1': 'value1',
        'key2': 'value2',
        'key3': 'value3'
    }
    # 빈 딕셔너리 생성
    empty_dict = {}
    
    # 학생 성적표
    grades = {
        'Alice': 90,
        'Bob': 85,
        'Charlie': 88
    }
    
    # 접근하기
    print(grades['Alice'])  # 출력: 90
    
    # 값 수정하기
    grades['Bob'] = 95
    
    # 요소 추가하기
    grades['David'] = 78
    
    # 요소 삭제하기
    del grades['Charlie']
    # 딕셔너리 생성
    my_dict = {'name': 'John', 'age': 30, 'city': 'New York'}
    
    # keys() 메서드 예제
    keys = my_dict.keys()
    print("Keys:", keys)  # 출력: dict_keys(['name', 'age', 'city'])
    
    # values() 메서드 예제
    values = my_dict.values()
    print("Values:", values)  # 출력: dict_values(['John', 30, 'New York'])
    
    # items() 메서드 예제
    items = my_dict.items()
    print("Items:", items)  # 출력: dict_items([('name', 'John'), ('age', 30), ('city', 'New York')])
    
    # get() 메서드 예제
    age = my_dict.get('age')
    print("Age:", age)  # 출력: 30
    
    # pop() 메서드 예제
    city = my_dict.pop('city')
    print("City:", city)  # 출력: New York
    print("Dictionary after pop:", my_dict)  # 출력: {'name': 'John', 'age': 30}
    
    # popitem() 메서드 예제
    last_item = my_dict.popitem()
    print("Last item popped:", last_item)  # 출력: ('age', 30)
    print("Dictionary after popitem:", my_dict)  # 출력: {'name': 'John'}

    '[업무 지식] > Python' 카테고리의 다른 글

    Python / 데이터 집계  (0) 2024.10.23
    python / boolean indexing  (0) 2024.10.23
    Python / 코드 핵심 요약  (0) 2024.10.23
    Python/약수의 합  (0) 2024.10.22
    Python/자릿수 더하기  (0) 2024.10.22