Python/Python 기초 정리(16)
-
[Python] *args, **kwargs 란?
*args란? arguments의 줄임말로 인수를 말합니다. 여러 개의 인자를 함수로 받고자 할 때 사용합니다. 꼭 args가 아닌 다른 이름으로 받아도 됩니다. 앞에 *를 붙여주면 복수의 인자를 받습니다. args는 tuple형태로 전달됩니다. def print_names(*args): for name in args: print(name) print('>> 한개의 인자') print_names('가나다') print('>> 두개의 인자') print_names('가나다', '라마바') print('>> 세개의 인자') print_names('가나다', '라마바', '사아자') print('>> 타입 출력') print(type(args)) # 결과 >> 한개의 인자 가나다 >> 두개의 인자 가나다 라마..
2022.03.19 -
[Python] 예외처리 try/except, raise
try / except 에러코드 발생 시 취할 액션에 대해 정의해 줄 수 있다. user = User.objects.get(id=3) 다음 코드에서 id=3인 user가 없는 경우 DoesNotExist를 출력하며 동작을 멈추게 된다. 사용자가 없다면 그에 맞는 액션을 취해야 하지 페이지 에러를 내면 곤란한 경우가 많기 때문에 다음과 같이 예외처리를 해주어야 한다. 주로 데이터베이스에서 데이터를 가져올 때 비슷한 상황이 많이 발생하는데, filter를 사용한다던가 몇 가지 방식이 있지만, 결국엔 데이터가 없을 경우 예외처리는 필요하므로 상황에 맞게 사용하면 좋을 것 같다. 이 코드를 예외처리해주는 코드는 다음과 같다. DoesNotExist 에러가 발생할시 login페이지로 보내주는 코드이다. try: ..
2022.03.19 -
[Python] 문자열 관련 함수 : 문자열 분해, 결합, 변환 관련 함수
문자열 분해 관련 함수 split() 문자열을 구분자의 기준으로 나누어 list 형태로 반환한다 {문자열}.split(sep='매개변수') sep= 생략가능 구분자를 생략하면 공백으로 나누며, 연속된 공백은 하나의 공백으로 처리한다 구분자를 생략하지 않고 " "공백으로 연속된 공백을 빈값으로 리스트에 넣는다 a = "hi, my, name" print(a.split(sep=", ")) # 구분자 seperator 지정 print(a.split(", ")) # sep= 생략 print(a.split()) # 구분자 생략하면 공백으로 나눔, 공백이 중복 될 경우에도 하나의 공백으로 처리 b = "hi my name" print(b.split()) # 구분자를 생략하면 두개의 공백을 하나로 처리 print(b..
2022.03.19 -
[Python] 문자열 관련 함수 : 공백 관련 함수
공백 존재 여부 관련 함수 isspace() 문자열이 공백으로만 이루어져 있는지 확인하는 함수 a = " " b = " s " print("a.isspace() >>> ", a.isspace()) print("b.isspace() >>> ", b.isspace()) # result a.isspace() >>> True b.isspace() >>> False 공백 제거 관련 함수 strip() 문자열 앞뒤공백을 제거 a = " s " print("a >>> '" + a + "'") print("a.strip >> '" + a.strip() + "'") # result a >>> ' s ' a.strip >> 's' lstrip() 문자열 앞쪽(왼쪽) 공백을 제거 a = " s " print("a >>> '..
2022.03.19 -
[Python] 문자열 관련 함수 : 대소문자 관련 함수
대소문자 판단 islower() 문자열이 모두 소문자인가 여부를 boolean값으로 반환 print("I Love You >> ", "I Love You".islower()) print("i love you >> ", "i love you".islower()) result I Love You >> False i love you >> True isupper() 문자열이 모두 대문자인가 여부를 boolean값으로 반환 print("I Love You >> ", "I Love You".isupper()) print("I LOVE YOU >> ", "I LOVE YOU".isupper()) result I Love You >> False I LOVE YOU >> True istitle() 문자열이 제목 형식인지..
2022.03.19 -
[Python] 문자열 관련 함수 : 숫자 포함 관련 함수
숫자 포함 관련 함수 isalnum() 문자열이 문자와 숫자로만 이루어졌는지 여부를 boolean 값으로 반환 문자열.isalnum() 한글도 true값을 반환한다 공백도 판단하여 공백이 포함되어있으면 false 특수문자는 false a = "ab cd efg" b = "abcdefg" a = "ab cd efg" b = "abcdefg" c = "123" d = "1 2 3" e = "abc123" f = "abc 123" g = "가나다" h = "≥" print("a.isalnum() >>> ", a.isalnum()) print("b.isalnum() >>> ", b.isalnum()) print("c.isalnum() >>> ", c.isalnum()) print("d.isalnum() >>> ..
2022.03.19