ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [n511] Python Programming
    AI 부트캠프 2022. 1. 18. 10:33

    프로그래밍과 문제해결

    • 알고리즘 : 효율적인 문제 해결 프로세스
    • 자료구조 : 프로그램 또는 데이터 구조
    • 문제를 해결할 때 가장 중요한 점은 최소 비용, 최대 효율!

     

    정규표현식

     

    [정규표현식] re 모듈

    정규표현식  regular expression 특정한 패턴과 일치하는 문자열을 '검색', '치환', '제거' 하는 기능을 지원 정규표현식의 도움없이 패턴을 찾는 작업(Rule 기반)은 불완전 하거나, 작업의 cost가 높음 e.

    da-journal.com

     

     

    다양한 메소드의 활용

    rjust(width, [fillchar])

    특정 문자를 원하는 문자로 지정한 길이만큼 채우는 메소드이다.

    #"0abcd"
    print("abcd".rjust(5,"0"))
    
    # 원하는문자열.rjust(몇개만큼채울까, "무엇으로 채울까")

     

     

    zfill(width)

    그 자릿수 만큼 채워 준다

    #"002"
    print("2".zfill(3))
     
    #"50000"
    print("50000".zfill(5))
     
    #"00123"
    print("123".zfill(5))

     

    split

     

    deepcopy

    깊은 복사는 원본이 바뀌더라도 영향을 받지 않게 완전히 새로운 변수에 저장하는 메소드이다.

    import copy
    ex = [[1, 2], [3, 4, 5]]
    ex_deepcopy = copy.deepcopy(ex)		# 깊은 복사 -> 즉, 원본에 영향 받지 않는 변수를 새로 지정.
    ex_copy = ex.copy()					# 얕은 복사 -> 원본이 바뀌면 영향 받는다.
    
    ex[1].append(6)						# 원본을 수정한다.
    
    print(ex)  							# 원래 변수
    
    print(ex_deepcopy) 					# 값이 변하지 않음을 확인.
    print(ex_copy)  					# 원본에 따라 값이 변한다.

     

     

    에러상황파악(Error & Warning)

    • IndentationError: 들여쓰기를 잘 못 했을 때 발생
    • SyntaxError: 예약어로 변수를 선언한다거나 반복문 끝에 ':'를 쓰지 않은 등 문구에 에러가 있을 때 발생
    • KeyboardInterrupt: 사용자가 종료 단축키를 눌렀을 때 발생
    • 경고 (Warning): 에러는 아니지만, 메모리 사용이 비효율 등 일 때 발생

     

     

    컬렉션 자료형의 내장메소드

    append(), extend(), insert()

    • 모두 리스트에 값을 넣는 기능은 같다. 
    • a.insert(len(a), x) 와 a.append(x) 는 같은 의미이다.
    • 삽입하고자 하는 값이 리스트일 때, append()는 리스트 자체로 삽입되고, extend()는 그 안의 값이 삽인된다. 
    ans=[]
    for i in range(10, 100):
        if (i%5 == 0):
            ans.append(str(i))  # ans.insert(len(ans), str(i))
    
    print(','.join(ans))

     

    del(), remove(), pop()

    • remove는 리스트의 값을 이용해서 삭제한다.
    • pop은 리스트의 인덱스를 이용해서 삭제하며, 삭제된 값을 반환한다.
    • del은 리스트의 인덱스를 사용하지만, 리턴 값이 없다.

     

    count(), index()

    • count()는 해당 값이 몇 개 있는 가를 찾는다.
    • index()는 해당 값이 위치한 첫 번째 인덱스를 찾는다.
    a =[1, 2, 3, 4, 5, 1, 2, 1]
    a.index(1)
    # 0
    
    a =[1, 2, 3, 4, 5, 1, 2, 1]
    a.count(1)
    # 3

     

    sort, sorted

    • sort()는 리스트의 원본을 수정한다.
    • sorted()는 원본은 그대로 두되, 정렬된 리스트를 반환한다.

    'AI 부트캠프' 카테고리의 다른 글

    [n513] 파이썬 with OOP  (0) 2022.01.20
    [n512] 파이썬을 활용한 문제 해결  (0) 2022.01.19
    [n435] 이미지 처리 요약  (0) 2022.01.12
    [프로젝트] 얼굴 사진으로 나이 감지하기  (0) 2022.01.11
    [n434] GAN  (0) 2022.01.05

    댓글