-
. 원칙: 괄호 이용하기- 개행이 필요한 경우는 대부분 괄호를 사용하여 개행할 수 있다. 이 경우 들여쓰기는 자유롭게 넣어도 무방하다.) 원래 괄호를 썼던 경우dict = { "": , "": , "": }list = [, , , , , ]tuple = (, , , ,)list = [i for i in range()] 리스트, 딕셔너...
-
변수명, 메서드명, 함수명, 패키지명, 모듈명: 모두 소문자인 snake case를 써라. 변수명, 함수명의 경우 대부분 모두 소문자인 snake case를 쓰는 것이 추천된다. 클래스의 메서드명의 경우 lower camel case를 쓰는 경우도 많지만, 어떤 프레임워크 또는 라이브러리에서 쓰이는 클래스/객체의 경우 그 메서드가 lo...
-
import osval = os.environ['env']val = os.environ.get('env')
-
. 개요- 파이썬은 소스코드를 한줄 한줄 실행할 때 그때마다 그 코드에서 사용하는 변수의 자료형을 결정하는 동적 타입 언어이며, 따라서 정적 타입 언어와 달리 한 변수를 한 곳에서는 정수형으로 다른 곳에서는 문자열형으로 사용하는 것이 가능하다. (다만, 파이썬은 서로 다른 자료형끼리의 연산 시 에러를 발생시키는 강타입 언어로서 같은 상황에서 암묵적으로 타입을 변환해 연산하는 약타입 언어와는 다르다.) 동적 타...
-
. 변수명 앞에 * 붙이기) 함수를 정의하면서 인자 앞에 *을 썼을 때def func(arg: int, *args_tuple: int) -> None: for arg in args_tuple: print(arg)func(, , , , )함수를 정의하면서 인자 앞에 * 표시를 쓰면, 인자로 전달받은 값들을 하나의 튜플에 담아 그 튜플이 * 표시와 함께 쓰인 그 변수명에 전달되게 된다.) ...
-
. 개요list = [, , , , ]list_iter = list.__iter__()print(list_iter.__next__()) # 이 출력된다.- iterable 객체의 멤버로서 그 객체의 각 원소를 하나씩 차례대로 순회하여 가리키고자 할 때 사용하는 객체를 iterator 객체라 한다. 파이썬의 모든 iterable 객체는 메서드로 그 객체의 iterator 객체를 리턴하는 __iter__() 메서...
-
. datetime형, date형 변수import datetimenow_datetime = datetime.datetime.now() #현재 날짜, 시간을 불러와 datetime형 변수로 리턴한다.datetimedatetime = datetime.datetime(, , , ,,) #'년 월 일 시 분 초'라는 정보를 datetime형 변수로 변환해 리턴한다.now_date = datetime.date.toda...
-
from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECdriver = webdriver.Chrome('chromedrive...
-
import requestsfrom bs import BeautifulSoupreq = requests.get("https://klee.github.io")soup = BeautifulSoup(req.text, "html.parser")article_url_a = soup.select('div.post-list-article > li > div > h')article_urls = []for u...
-
. .html template 파일에 다음 코드를 넣는다.() 파일 상단에 {% load static %} 추가하기{% load static %}() 정적 template 파일 경로를 다음과 같은 형식으로 쓰기<img src="{% static 'img.jpg' %}">. settings.py 소스파일에서 STATICFILES_DIRS 변수를 정의한다.STATICFILES_DIRS = [os.pat...
-
. django를 설치한다.pip install django. 새 프로젝트를 만든다.django-admin startproject project- 이때 새 프로젝트를 구성하는 소스파일들이 project 폴더에 담기게 된다. 프로젝트를 구성하는 각 소스파일들에는 다음과 같은 내용들이 담겨있다. settings.py: 그 프로젝트의 기본 설정에 관한 변수들이 저장돼 있다. 그 프로젝트를 서버로 실행했을 ...
-
. DB 스키마 적기class Table(models.Model): #models.Model이라는 클래스를 상속하는 Table이라는 클래스를 만든다. def __str__(self): #관리자 페이지에서 보여질 튜플의 이름을 리턴하는 메서드 함수 return str(self.field) field = models.IntegerField(default=, null=False) fi...
-
. 빈 폴더로 이동한 후 그 폴더에 가상환경을 생성한다.python -m venv .- ‘-m venv .’는 venv라는 모듈을 파이썬으로 실행해 현재 위치의 폴더에 가상환경을 생성하도록 하는 옵션이다. venv는 파이썬에 내장된 가상환경 생성 모듈로서, 지정된 경로에 가상환경을 생성한다.. 명령어를 입력하여 새로 생성한 가상환경을 실행시킨다.cd scriptsactivate- 가상환경을 생성한 폴더에서 위...
-
. matplotlib) 그래프 그리기import matplotlib.pyplot as pltfig = plt.figure(figsize=(w, h))ax = fig.add_axes([l, b, w, h])fig.axes[].plot(list, list, label="func") plt.legend() plt.show()- plt.figure() 함수를 호출하면 빈 figure 객체를 생성할 수 있다. fig...
-
* PIP- 파이썬의 공식 패키지 관리 프로그램으로, 온라인 패키지 저장소인 PyPI에 접속해 외부 모듈을 로컬 패키지에 설치하거나 삭제하는 등 여러 관리를 할 수 있다.- 로컬에서 개발한 내 패키지는 이를 개발할 당시 사용한 패키지/모듈의 그때 당시 버전에 의존하므로, 만약 내 패키지를 이를 개발한 환경과 전혀 다른 환경에서 구동하고자 한다면 그 새 환경에 내 패키지가 사용하는 패키지/모듈의 내 패키지를 개...
-
. Series) 생성import pandas as pds = pd.Series([, , , ])s = pd.Series({'one': , 'two':, 'three':}, name="random dict")s.name = "numbers"- pd.Series() 함수에 인자로 list 또는 차원 numpy.ndarray, dictionary형 등을 넣으면 그 인자와 같은 값을 갖는 pandas의 Series...
-
import numpy as npnp.random.seed() #이 메서드를 실행하면, 무작위로 난수를 발생시켜도 인자로 전달한 시드에 해당하는 난수값이 발생된다. 다시 말해, 같은 시드를 사용하여 이 메서드를 실행한 파이썬 코드는 어떤 PC에서 실행시키더라도 똑같은 난수값을 발생시킨다. arr = np.random.normal(loc=, scale=, size=(, )) #평균 , 표준편차 인 실수들이 정...
-
from scipy import statsn = p = .stats.binom.cdf(x, n=n, p=p) #주어진 n과 p에 대한 이항확률분포에서 확률변수가 x보다 작거나 같을 때의 확률을 리턴한다.stats.binom.stats(n=n, p=p) #주어진 n과 p에 대한 이항확률분포의 평균과 분산을 담은 튜플을 리턴한다.loc = scale = stats.norm.cdf(x, loc=loc, scale=...
-
ERROR: Could not install packages due to an OSError: [Errno ] No such file or directory) 경로가 너무 길어서일 수 있다.- 파이썬을 Visual Studio Code 등을 통해 설치를 하게 되면 패키지가 설치되는 경로가 C:\Users\(…)\AppData\Roaming\Python\… 과 같이 매우 길어지고, 이렇게 되면 경로 길이가 윈도...
-
. 생성import numpy as nplist = [, , ]tup = (, , )arr = np.array(list)arr = np.array(tup)np.array() 함수에 인자로 리스트, 튜플 등을 넣으면 그 인자와 같은 값을 갖는 numpy의 array형 변수를 선언할 수 있다. numpy의 array형은 빠른 속도를 필요로 하는 연산에 적합하며, numpy의 여러 함수와 연산자를 사용하여 수학의 ...
-
. 개요- 인공지능 분야에서의 프로그래밍은 단순히 코드만 쓰는 것보다 주석을 써야 하는 경우가 많다. 수식을 쓰는 경우도 많고, 그 코드를 쓰게 된 맥락을 주석에 충분히 상세히 적어야 하는 경우가 많기 때문이다. 일반적인 IDE 환경에서 제공하는 주석 기능에 한계가 있다 보니 인공지능 분야에서는 이쪽 관련해서 지원이 강력한 jupyter notebook이라는 IDE를 많이 사용하고 있다. (예를 들어, jup...
-
. queue 모듈의 Queue 객체를 사용from queue import Queueq = Queue()q.put([, , ])q.get()if q.empty(): print("queue is empty.")queue 모듈의 Queue 객체는 put(), get(), empty() 등의 메서드를 사용할 수 있다.. 리스트를 통한 구현class QUEUE: def __init__(self): ...
-
def func(i): return i**obj = range()map = map(func, obj)- map() 함수는 함수와 iterable 객체를 인자로 하며, 인자로 받은 iterable 객체의 각 원소를 인자로 받은 함수에 대입해 그 함수값들을 (map 객체라는) iterable 객체에 담아 이를 리턴한다.- 인자로 넣는 함수에 형변환 함수들(int(), str() 등)을 전달하면, 어느 한 객...
-
. 개요- heapq 모듈의 heappush(), heappop() 함수를 사용하여 리스트를 힙처럼 사용할 수 있고, 이러한 특성을 이용하여 리스트로 우선순위 큐를 구현할 수 있다.- 구체적으로, heappush() 함수의 인자로 리스트와 그 리스트에 넣을 원소를 넣으면 그 리스트에 그 원소가 삽입되면서 그 결과로 그 리스트가 min-heap이 되고, heappop() 함수의 인자로 리스트를 넣으면 그 리스트...
-
. 컴파일import rep = re.compile('\w+')파이썬에서는 re라는 모듈을 import하여 정규표현식을 쓸 수 있다. 정규표현식을 쓸 땐 가장 먼저 사용할 정규표현식을 re 모듈의 compile() 함수에 대입하며 컴파일한 객체를 변수에 저장해 두어야 한다. 파이썬의 정규표현식에 관한 함수들은 원칙적으로 이 객체의 메서드를 호출하는 형태로 수행된다.* 컴파일 옵션- 컴파일 함수의 두 번째 인자...
-
. “문자열”[i]- 파이썬에서는 문자열 뒤에 직접 [i]를 붙여 그 문자열의 i번째 문자에 접근할 수 있다.. join()list = ["a", "b", "c", "d"]str = "".join(list)- 만약 문자들이 interable 객체의 각 원소에 나뉘어져 있을 때 이들을 하나로 합한 문자열을 구하고 싶다면 join() 함수의 인자로 해당 iterable 객체를 전달하면 된다.- join() 함수의...
-
. 개요- zip() 함수에 둘 이상의 iterable한 객체를 인자로 넣으면 i번째 행의 각 원소가 zip() 함수에 인자로 넣어진 객체들의 i번째 원소인 새로운 객체가 리턴된다. 이때 리턴되는 객체가 zip 객체로, 이 역시 iterable하므로 여러 방식으로 활용이 가능하다. 대표적으로, for 구문의 in 뒤에 객체로 넣는 경우가 있다.list = [, , , , ]tup = (, , , , )str ...
-
def isNumber(s): try: int(s) except: return "s에 문자가 포함됨." return "s는 숫자임."
-
tup = (, , , , )print(sorted(tup, reverse=True))- sorted() 함수에 인자로 iterable한 객체를 넣으면 그 객체의 내부값이 정렬된 리스트 객체가 리턴된다.- sorted() 함수의 두 번째 이후 인자로 reverse라는 이름에 True값을 지정해 리턴하면 내림차순 정렬이 된다. (이 인자는 생략할 수 있다.)def func(row): return row[]...
-
. 합집합set = set([, , ]) | set([, , ]). 교집합 연산을 이용하여 두 리스트에 모두 포함된 원소 개수 구하기list = [, , , , ]list = [, , , , ]num = len(set(list) & set(list)). 차집합 연산을 이용하여 에라토스테네스의 체 구현하기def getPrimeNumbers(n): p = set(range(, n+)) for i...
-
list = [, , , , ]print(min(, ))print(min(list))max, min 함수는 주어진 인자의 최댓값/최솟값을 리턴하는 함수로, iterable 객체를 인자로 받기도 하고 정수/실수 등의 자료형 변수 여러 개를 인자로 받기도 한다. 하나의 iterable 객체가 인자로 전달되면 그 객체 내 원소 중 최대/최솟값을 리턴하고, iterable 객체가 아닌 정수/실수 등의 자료형 변수 여...
-
num = ''print(int(num, ))int 형변환 때 문자열을 인자로 넣고, 두 번째 인자로 그 문자열의 진법을 넣으면 인자로 받은 문자열을 인자로 받은 진법으로 쓰인 것으로 보고 값을 계산하여 그 값을 리턴한다.
-
. 개요- 함수 중간중간에 계산된 결과값으로 이루어진 iterable한 객체를 만들고 싶을 때, yield 예약어를 사용하여 generator 객체를 만들어 사용할 수 있다.- 구체적으로 yield 예약어는 ‘return과 마찬가지로 함수 호출된 곳으로 값을 반환하되, 반환 후 다시 함수 내부 yield를 호출한 곳으로 돌아와 함수 내부 코드를 계속 수행한다’라는 개념으로 이해하면 정확하다. 예를 들어 아래와...
-
. whilewhile True: print(num % ) num //= if num == : break파이썬의 while문은 while 키워드, 조건식, 콜론 연산자로 이루어진다. 함수 선언과 마찬가지로 while문의 콜론 연산자 뒤에는 다른 구문을 쓸 수 없다.while num > : print(num % ) num //= if num == : breakelse: ...
-
. 개요C 유사 언어에서 둘 이상의 원소를 관리하는 가장 기본적인 변수 타입은 흔히 array라고 하는데, 파이썬에서는 이를 list라 한다. list는 내부적으로 구현이 array와 다소 다르기는 하지만 (파이썬에서 list로 선언된 변수의 원소들은 각 원소가 가리키는 데이터값의 주소와 다음 인덱스 원소가 있는 메모리 주소를 저장한다) 사용 방식은 C 유사 언어의 일반적인 배열과 거의 같다. (인덱스 번호로...
-
. 함수 선언a=b=def func(param, param): global a a= b= return param * param * bresult = func(, )print(a) # 가 출력된다.- 함수 내 전역변수 사용: 이 경우 굳이 함수 내에서 이를 캡쳐하겠다고 특별한 선언을 해야 하는 것은 아니며 그러한 선언 없이도 자유롭게 사용이 가능하다. 단, 이 경우 함수 내부에서 전역변수의...
-
. 변수 선언 및 값 대입num = str = '문자열'num, num = , num, num = num, numnum, num = [, ]- 파이썬에서는 C의 int, char나 자바스크립트의 var 같은 변수선언 예약어가 따로 없으며, 변수에 값을 대입하는 식을 처음 쓸 때가 곧 그 변수를 선언할 때와 같다. (자바스크립트의 var 같이 선언하지도 않은 변수를 사용할 수는 없다.)- 파이썬에는 쉼표(,)를...
-
from itertools import permutations, combinationspermutations(): 원소들을 배열하는 모든 순서 찾기for perm in permutations(nums, ): print(list(perm))permutations() 함수는 주어진 iterable 객체에서 주어진 개수 만큼의 원소를 순서를 고려하여 뽑는 모든 경우의 수를 리턴한다.이 함수는 예를 들어 주어진...
Python (38)