iCalendar 란? 아이캘린더(iCalendar)는 인터넷 사용자들이 다른 인터넷 사용자들에게 전자 메일을 이용하여 미팅 요청과 할 일을 보내거나 .ics 확장자로 파일들을 공유할 수 있게 해 주는 컴퓨터 파일 형식이다. 아이캘린더 데이터 파일을 받은 사람들은 이메일 클라이언트나 캘린더 프로그램 따위를 이용하여 보낸이에게 쉽게 응답할 수 있고 다른 미팅 일정을 역제안할 수 있다. [출처] - 위키백과-아이캘린더
Python의 vobject를 이용하여 iCalendar를 만들수 있다. vobject를 이용하여 vCard 역시 파싱할 수 있다.
가상환경 필요한 이유
파이썬에서 간단한 수준으로 연습한다면 가상환경의 필요성을 크게 느끼지는 못한다. 하지만 다음과 같은 이유 때문에 가상환경은 유용하다.
1. 프로젝트를 하고 나서 배포해야할때 이 프로젝트를 위해서 추가로 설치된 패키지들이 무엇인지 구별할 필요가 있다. 여러 개의 프로젝트를 한다면 패키지들이 썩여서 구별하는 것은 여간 어려운 일이 아니다.
2. 시간이 지나면 설치된 패키지들이 업데이트 되는데 패키지들간의 의존하는 것도 있어서 버전을 잘 맞추는 건 불가능 할 수도 았다.
3. 파이썬 자체의 버전도 다르게 사용해야 할때가 있다.
가상환경 사용법
파이썬 3.4부터 기본으로 포함된 venv 패키지를 사용해서 가상환경을 만들 수 있다.
먼저, 가상환경을 만들려면 다음 명령어를 사용한다.
c:/project> python -m venv project_env
가상환경을 활성화 시키기 위해서 다음 명령어를 사용한다. (윈도우즈 기준으로)
C:\project>project_env\scripts\activate
(project_env) C:\project>
가상환경에서 패키지 관리
가상환경에서 설치한 패키지들과 버전을 파일로 저장해 두면 배포할때 유용하다. 명령어는 다음과 같다.
> pip freeze > requirements.txt
저장해둔 파일로 아래 명령어와 같이 실행하면 필요한 패키지와 버전을 한번에 설치할 수 있다.
> pip install -r requirements.txt