ice rabbit programming

[Python] Python 기초 팁 본문

Development/Python

[Python] Python 기초 팁

판교토끼 2020. 9. 4. 21:22

이전 글에서 Python에서의 함수와 반복문 등을 다루었는데, 이 글에서는 그런 식으로 정리하는 것은 아니고 기초 문제들을 풀면서 얻은 팁/지식/개념에 대해서 나열해보고자 한다. 정리가 잘 안되어 있다..

시퀀스 타입

  • 리스트 : [] 안에 숫자/문자 나열
    + 연산자를 통해 두 리스트를 합칠 수 있다(ex. [1,2]+[3,4] = [1,2,3,4])
  • 튜플 : () 안에 나열, 리스트와 같지만 요소의 값 변경이 불가하다.
  • 딕셔너리 : {} 안에 나열, key:value 로 구성되어 있다. dict[key]로 value에 접근할 수있다.
    key 추출 : dict.keys()
    value 추출 : dict.values()
    모두 추출 : dict.items()
  • len(list)를 통해 시퀀스 길이를 가져올 수 있다.
  • in 키워드로 요소에 있는지 확인할 수 있다(ex. 5 in listdata).
  • del 키워드로 list의 원소를 제거하거나 메모리에서 객체를 제거할 수 있다.
    C++에서의 delete와 비슷
  • list 차집합 : complement = list(set(list1)-set(list2))
  • list 교집합 : intersection = list(set(list1)&set(list2))
  • list 합집합 : union = list(set(list1)|set(list2))
  • list 원소들이 모두 참/거짓인지 판별 : all(listdata), any(listdata)

String

  • str[start:end:간격]으로 slice할 수 있다.
    start 혹은 end 생략 시 각자의 끝으로 지정된다.
    간격 생략 시 1이다.
  • 문자열 뒤집기 : txt[::-1]
  • 문자열이 영문/한글로만 구성되어 있는지 : txt.isalpha()
    숫자, 영어/한글/숫자 등 여러 바리에이션 존재
  • 문자열 양쪽 공백 제거 : txt.strip()
  • 문자열에 포함된 문자 개수 : txt.count('hi')
  • 문자열 문자로 합치기 : '-'.join(strlist)
  • 정렬 : sorted(data)
  • eval로 문자열을 실행 가능하다.

함수

  • 함수는 여러 값을 return할 수 있다(return result, 200)
  • 함수에서 없거나 여러 개가 될 수 있는 가변인자를 쓸 수 있다. C#이나 Java와 쓰임새 동일
    ex. func1(*c):
  • 전역변수를 함수 내에서 가져올 때에는 global 키워드를 앞에 붙여준다.
  • try-except(예외발생, catch와 같음)-else(예외발생X)-ifinally(둘다) 구문으로 예외처리가 가능하다.
  • map 함수로 함수 f에 집합 A의 원소들을 대입하여 집합을 구할 수 있다.
    ex. f=lambda x:x*x
    ret1 = map(f,args)

클래스

  • class 내에서 self.가 붙은 변수는 멤버변수, 그렇지 않은 변수는 static 멤버이다.

람다식

  • add = lambda x, y: x+y와 같이 가능