가상환경 리스트 확인 conda info --envs 가상환경 삭제 명령 conda remove --name [가상환경명] --all 삭제 후 결과 (base) C:\Users>conda remove --name scientis --all (base) C:\Users>conda info --envs # conda environments: # base * e:\Anaconda3 scientist e:\Anaconda3\envs\scientist --envs로 확인을 하면 삭제가 된 것을 확인할 수 있다. 참고로 이렇게 안 지워질때가 종종 있는데 레지스트리에 등록되는 것이 아니니 직접 폴더를 지우는 방법도 있다. 아나콘다 설치 폴더의 envs 폴더로 가면 가상환경으로 만들어진 폴더들이 보일텐데 원하는 폴더를..
파이썬에서는 매우 간편하게 random 라이브러리를 사용하여 리스트를 섞을 수 있다. Random.shuffle 예시 import random my_list = ['삼성전자','LG전자','BTS','블랙핑크','YG'] random.shuffle(my_list) print('1 round->', my_list) # 1 round-> ['YG', 'BTS', '블랙핑크', '삼성전자', 'LG전자'] random.shuffle(my_list) print('2 round->', my_list) # 2 round-> ['LG전자', '블랙핑크', '삼성전자', 'YG', 'BTS'] 이와같이 shuffle을 반복할때마다 값을 계속 섞는다. 이 원리를 이용해서 로또 숫자를 뽑는 것도 매우 쉽게 만들 수 있다...
리스트 컴프리헨션(List Comprehension) 개념 Java와 C와 같은 언어들을 사용하다가 파이썬의 소스를 보다보면 가장 처음 당황하는 방식이 아마 리스트 캄프리헨션(List Comprehension)이라 생각한다. 파이썬은 수학적인 언어이다보니 기능들도 매우 수학적인데 이 기능은 리스트를 이용하여 새로운 리스트를 만드는 것이다. 그래서 이 기능을 잘 활용하는 사람은 파이썬을 매우 잘 사용하는(파이썬스럽게...) 사람이라 말을 할 수도 있을 것이다. List Comprehension example 짝수값 리스트 even_numbers = [x for x in range(10) if x % 2 == 0] print(even_numbers) # [0, 2, 4, 6, 8] range로 0 ~ 9까지..
정규 표현식을 사용할 때에는 메타 문자(meta characters)라는 것을 사용한다. []\.^$*+{}|() 이와같이 메타문자를 사용하여 다양한 정규표현식을 만들 수 있다. 개발을 하면서 모든 정규표현식을 익힌다는 것은 비효율적이며 그때그때 프로젝트에 따라 정규표현식을 사용하는 것이 유용하기 때문에 일단 하나씩 실습을 하면서 어떤 것이 가능한지만 익히는게 중요하다. 메타 문자 문자 설명 예시 [] A set of characters "[a-m]" \ Signals a special sequence (can also be used to escape special characters) "\d" . Any character (except newline character) "he..o" ^ Starts w..
다른 언어도 쉽겠지만 Python은 정말 별도로 구현해야 하는 것들을 기본적으로 매우 잘 제공하고 있다. 정렬도 그중 하나의 예인데 다양한 정렬 방식을 제공하니 아래와 같이 필요한 방법을 사용하면 된다. sorted() - 현재 리스트를 변경하지 않고 정렬 후 변수에 넘기는 방식 list_data = [4,2,5,3,7,8,9] sorted_list_data = sorted(list_data) print('새로운 리스트->', sorted_list_data) # 새로운 리스트-> [2, 3, 4, 5, 7, 8, 9] list.sort() - 현재의 리스트를 정렬한다. list_data.sort() print('본인 정렬->', list_data) # 본인 정렬-> [2, 3, 4, 5, 7, 8, 9]..
이 포스팅은 일반적인 계산으로 구하는 것과 numpy를 활용하는 것 2가지 방식을 모두 제공합니다. 라이브러리 및 리스트 생성 import math import numpy vals = [i+1 for i in range(10)] # 1부터 10까지 숫자를 리스트로 생성 print(vals) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 우선 for문을 사용하여 1 ~ 10까지의 숫자를 리스트로 생성하여 vals라는 변수에 담습니다. 평균구하기 # 평균 mean = sum(vals) / len(vals) print(mean) # 5.5 일반적인 방식으로 평균을 구하는 방식은 이와 같이 더하고 나누는 작업을 해야 하지만 # Numpy 평균 num_mean = numpy.mean(vals) pr..
소인수분해(Prime Factorization)란 다들 알다시피 1보다 큰 자연수인 소인수(소수인 인수)들만의 곱으로 표현하는 것을 말한다. 소인수는 일단 1이라는 값이 아닌 2부터 시작하는 것이 핵심이며, 2로 나누지 못할 경우 2에서 +1를 해주면서 나누어지는지 체크하면 된다. 소인수분해 소스코드 def factorization(x): d = 2 while d
랜덤 모듈은 난수값을 생성하기 위한 기능을 담고 있는 모듈로 다양한 랜덤 관련 함수를 제공하고 있다. 랜덤 모듈의 경우 게임등에서도 활용할 수 있지만 데이터 분석에서도 다양한 결과를 실험하기 위해서도 쓰일 수 있으며 화면에서 데이터들을 랜덤으로 노출하고 싶을 때에도 사용할 수 있는 등 활용 방법은 매우 다양하다. 랜덤 사용 방법 import random random.random()# 0~1의 실수값 기본적으로 random.random() 함수를 사용하면 0~1의 실수값을 호출하게 된다. 위의 random을 호출한 결과는 그때그때 다르겠지만 이와같이 모두 0~1사이의 실수가 나오는 것은 확인할 수 있다. 값의 범위 지정하기 0~1의 값을 이용하여 다양한 랜덤을 구현할 수도 있겠지만, 값의 범위를 지정하여 ..
파이썬에서 클래스를 만들 경우, 생성자와 소멸자를 만들어서 원하는 값을 세팅하거나 해제시킬 수 있다. 예를들어 우리가 형태소 분석기를 파이썬으로 직접 만든다고 가정을 해보자. 그러면 형태소 분석기의 객체를 생성하는 것과 동시에 품사 사전을 읽어야 될 것이다. 이런것들 뿐만 아니라 해당 클래스에 속한 메소드들이 공통으로 사용하는 값들이 존재한다면, 생성자를 통해서 값을 세팅할 수 있을 것이다. 생성자 class 클래스명: def __init__(self): 생성자는 __init__ 메소드를 만들면 된다. self는 기본적으로 생성이 되며 값을 세팅하고 싶을 경우 self 이후에 인자값을 지정하면 된다. 소멸자 class 클래스명: def __del__(self): 클래스가 소멸하게 될 경우 실행되는 메소드..
문자열을 내가 원하는 형태로 출력하고 싶을 경우 format 함수를 이용해서 구현할 수 있으며 format 함수는 기능이 크게 2가지가 있다. 첫째 포맷안에 있는 값을 다른 방식으로 출력하고 싶은 경우 (ex: 천단위에 콤마를 붙인다던지) 둘째 %d 처럼 해당 위치에 값을 대입하는 것이다. 값 대입 사용법 중괄호가 포함된 문자열.format(값들) 사용법은 문자열 내부에 중괄호 {}가 존재하며, 문자열 이후 format() 펑션에 중괄호에 맞는 값들을 입력하면 된다. 예시 기본적인 방법 print('숫자 : {}, 실수 : {}'.format(5, 0.5)) # 숫자 : 5, 실수 : 0.5 위와 같이 숫자와 실수를 매우 자유롭게 입력할 수 있다. 인덱스 부여 print('실수 : {1}, 숫자 : {0..
파이썬에서는 리스트(List)와 같은 반복적인 데이터를 특정 조건에 맞으면 걸러주는 Filter 내장함수가 있다. 다만 필터함수는 사용법이 특이한 것이 별도의 함수가 필요하다. 인자값을 2개 전달하는데 하나는 필터링을 위한 함수와 데이터이다. 필터 사용법 filter (함수, 데이터) 필터가 없을 경우 우선 filter함수가 없을 경우 처리 방법에 대해서 생각을 해보도록 한다. numbers = range(1, 11) # 짝수만 결과 리턴 def is_even(number): return number % 2 == 0 # 짝수일 경우 True result = [] for number in numbers: if is_even(number): result.append(number) print(result) #..
프로그램은 2가지만 잘해도 왠만한 것들은 다 만들 수 있다. 첫째 반복문, 둘째 조건문이다. 반복문은 for문과 while문이며 이는 이전 포스팅에서 설명을 했으니 이제 조건문에 대해서 알아보도록 한다. 조건문이란 어떤 조건을 생성하고 해당 조건이 맞으면 수행하는 문을 말하며 파이썬에서는 if 조건문이 있다. for문, while문과 if 조건문은 모두 제어문에 속하며 제어문은 프로그램의 실행 순서등을 제어하거나 특정 조건일 때 수행할 수 있게 하는 것을 말한다. 사용법 if 조건: 실행문 elif 조건: 실행문 elif 조건: 실행문 ... else: 실행문 사실 조건문은 if만 있는 것이 아니다. while 문에서도 true일 때 loop를 실행하게 되는데 while에서 사용하는 조건과 if에서 사용..