목록CodeStates (26)
체대출신 코더의 개발자 성장기

장고를 다운로드 하려는데 pyenv라는 가상환경을 다운로드 받아야하는 이슈가 있어서 왜 굳이 가상환경을 설정해야하는지 의문이 들었다. 검색 결과 파이썬 버젼 관리에 대한 이슈 때문에 가상환경을 설정 해야한다고 하는데 더 자세히 들어가보자 1. 왜 가상환경이 필요하지? 하나의 프로젝트는 많은 파이썬으로 작성한 코드들의 파일이 모여서 실행된다. 만약, 모두 다른버전의 파이썬으로 작업하다 하나로 합치는 경우가 생긴다고 생각해보자. 어떤 일이 일어날까? 버전충돌이 일어나 난리가 날 확률이 매우 높아진다. 이러한 상황을 방지하기 위해 가상환경이 필요하다고 생각하면 될것같다. 예를 들어 장고 1.5로 작성중인 A와 장고 1.4로 코드를 작성중인 B 가 있다고 해보자 A와 B를 한 프로젝트로 합치려니 B의 버전이 너..
기업 측에서 프로젝트를 만들때 참고하라고 받은 파일에 __init__이라는 빈파일이 모든폴더마다 있길래 왜 있나 의문이 들어서 서칭해보았다. 다른 폴더에 있는 파일을 import하여 쓰고 싶을 때, '나 쟤랑 같은 프로젝트에서 쓰이는 애야' 라는 표시를 해주지 않으면, 불러와 쓸 수 없다고 한다. 또한 한폴더에서 작성한 파일들을 *를 이용해 모두 불러오고 싶을 때는 __all__이라는 변수를 설정해주고, import할 것들을 명시적으로 적어 주어야한다고 한다 __all__ = ['echo']

초기의 웹 페이지 백엔드코드의 형태는 모든 코드가 하나로 합쳐진 형태였다. 하나로 합쳐서 꼬일데로 꼬인 코드는 프로젝트 관리를 어렵게 만들었다. 따라서, 사람들은 관리가 쉽도록 코드들을 구분짓기 시작했고, 이러한 구분을 구체화 시켜 MVC패턴, 혹은 MVT 패턴을 만들어 현재 사용중인 것이다. 1. MVT란? - 모델 : 사용자가 입력한 데이터를 DB에 저장하는 부분을 담당 - 뷰: 모델의 데이터를 적절하게 가공하여 클라이언트에게 보내어 보여주는 역할 - 컨트롤 , 템플릿 : 모델과 뷰를 사용자의 입력과 행동에 반응하여 업데이트 해주는 역할 2. 장고에서 MTV패턴은 어떻게 이용되나요? 1) 웹브라우져 에서 사용자가 특정한 이벤트를 발생시키고, 요청은 장고의 서버로 진입한다. 2) URL Dispatch..
튜플은 내부에 입력한 값을 변화시킬 수 없다. 삭제하거나 추가하려고 하면, error 가 떠버리므로 보기, 읽기의 기능만 제공한다. 원본을 해치지 않는 슬라이싱 서로다른 튜플을 더하거나 곱해서 새로운 튜플을 만들어 내는 것은 가능 하다.
리스트는 자바스크립트에서의 '배열'과 같다. 조금 차이가 나는 부분을 가져오자면 리스트내부의 어떤 요소를 삭제하고자 할 때 del을 이용한다. a = [1,2,3,4,5] del a print(a) #[2,3,4,5] 2. append js에서의 push와 같은 기능을 하는 것처럼 보인다. 3.index js에서 indexOf()와 비슷한 기능을 하는 것 같음 4. insert(index,value) 리스트의 index 번째에 value값을 넣은 행위를 실행해준다. 5.remove(value) 리스트내부의 첫번째 value 값을 삭제한다. 6. count(value) 리스트 내부에 있는 value의 수를 세준다.
1. 문자열의 길이 len()을 이용한다. a = "python" print(len(a)) #6 2. 문자열 slice 이상 미만의 범위를 가지는 js와는 다르게 이상 이하의 범위를 출력한다. a = "python" print(a[0:2]) # 'pyt' 3.문자열 포매팅 %s 문자열(String) %c 문자 1개(character) %d 정수(Integer) %f 부동소수(floating-point) %o 8진수 %x 16진수 %% Literal % (문자 % 자체) 3-1 . 1개의 문자열 혹은 숫자를 포매팅하기 print("I eat %s apples." % "five") #'I eat five apples.' print("I eat %d apples." % 3) #'I eat 3 apples.' ..
js와는 다르게 변수형을 선언해주지않고 바로 할당한다. a=3 1. 제곱 '**' 을 사용한다. a=2 b=2 c=2**2 print(c) #4 2. 나눗셈 몫 반환 '//'을 사용한다. a=7 b=4 print(7/4) #1.75 print(7//4) #1
월요일 부터 협업을 가는 기업의 백엔드 언어가 '장고'라는 프레임워크를 쓴다하여 급하게 파이썬 공부를 하고 있다.. 장고는 js의 node.js 처럼, 파이썬언어로 서버를 다룰수 있도록 해주는 언어같다. 사실 2년전인가 3년전에 국비지원학원에서 나의 첫 코딩역사를 시작하게 해준 프로그램언어가 '파이썬'이었기 때문에 기대되는점도 없지 않아 있다. 하지만 중요한 것은 하나도 기억이 나질 않는다.. 따라서 복습겸 .. 한단원씩 짧게 짧게 적어보면서 공부하려고 한다.