코드 정리, 파이썬 get함수, hasattr
Vim 코드 길이 정리
일반적으로 vim은 80자가 넘으면 가독성이 좋지 않으므로, 자르는 것이 좋다.
Python Get 함수
파이썬 get은 dictionary에서 key값으로 value를 얻을때 사용한다.
get(key)
은 key값이 없을경우 None을 반환한다.
반면 d[key]
로 접근하면 key값이 없을 경우 오류가 발생한다.
get(key, [])
와 같이 응용할 수 있다. key값이 없으면 []을 반환한다.
즉 get(key, default)
로 생각하면된다. key값이 안올 경우 default값을 반환하는 것.
hasattr을 이용한 존재 여부 확인
오브젝트에서 해당 존재 여부를 확인할때 사용 할 수있다.
request에서 해당 존재를 확인할 때, 이 방법으로 사용하지않고 다른 방법으로 접근하면 request에는 원래 user라는 항목이 없기 때문에 에러메세지가 뜬다. 대신 hasattr로 하면 True, False 를 반환한다.
이 외에 getattr
, setattr
등이 있다.
getattr
은 해당 오브젝트에 변수의 값을 가져오는 method이다.
setattr
은 해당 오브젝트에 변수에 값을 설정하는 method이다.
class sample:
def __init__(self, value):
self.value = x
.
.
test = sample(50)
test.value = 50
위와 같은 오브젝트를 만들고
hasattr(test, 'value')
>True
getattr(test, 'value')
>50
setattr(test, 'value', 10)
test.value
>10
이런식으로 할수있다.