본문 바로가기
728x90

Python32

[Python] Argparse란? Argparse 모듈 개념과 실습 예제 1. argparse란? 프로그램에 필요한 인자를 사용자 친화적인 명령행 인터페이스로 쉽게 작성하도록 돕는 라이브러리 command 창에서 프로그램 내의 인자를 조절하게끔 도와줌 2. argparse를 사용 하는 경우 스크립트를 실행할 때 인자를 받아서 변수를 처리해야 되는 경우가 생기는데 그럴 때 argparse를 사용합니다. ex) ETL script 내의 시간 변수 parser.add_argument('--D1', required=False) parser.add_argument('--D2', required=False) parser.add_argument('--HH', required=False) 3. argparse 예제 argparse를 통해 입력받은 인수를 1) 각 변수에 저장하기 2) 리스트.. 2022. 3. 3.
[Python] 파이썬의 여러가지 formatting 방법 다루기 파이썬의 포맷팅은 3가지로 분류할 수 있습니다. c언어 스타일의 포맷팅 format메소드를 이용한 포맷팅(python3부터 지원) f-string을 이용한 포맷팅(python 3.6부터 지원) #c언어 스타일의 포맷팅 name = "spidyweb" url = "https://spidyweb.tistory.com" print("%s의 블로그 주소는 %s 입니다. " % (name, url)) #python3부터 지원하는 format메소드 포맷팅 name = "spidyweb" url = "https://spidyweb.tistory.com" print("{}의 블로그 주소는 {} 입니다.".format(name, url)) #python3.6부터 지원하는 f-string 포맷팅 name = "spidyw.. 2022. 3. 2.
[Python] list comprehension이란? set, dictionary comprehension이란? 개념과 예제 1. list comprehension이란? 기존의 리스트 생성하는 방법을 편리하게 쓰는 문법 기존의 리스트를 생성하여 값을 입력하는 방법은 다음과 같습니다. numbers = [] for n in range(0, 10): numbers.append(n) 이러한 코드를 list comprehension이라는 문법으로 바꾸어보면 numbers_2 = [x for x in range(10)] 2. 다양한 list comprehension 예제 list comprehension은 for문에서 반복되는 변수를 콜론(:)다음에 줄을 바꿔 들여쓰기하는것이 아니라, for문앞에 작성 또한 list comprehension은 반복되는 변수에 여러가지 조건을 걸어줄 수 있습니다. # list comprehension 문.. 2022. 3. 2.
[Python] Iterable, Iterator 개념과 예제 및 iterator 직접 만들기 1. Iterator 순서대로 다음 값을 리턴할 수 있는 객체를 의미 Iterator는 자체적으로 내장하고 있는 next 메소드를 통해 다음 값을 가져올 수 있음 2. Iterable 내부 요소(member)를 하나씩 리턴할 수 있는 객체 Iterable한 것은 __next__ 메소드가 존재하지 않음 내부에 __Iter__라는 메소드를 가지고 있음 for문을 통해 순회할 수 있는 객체를 Iterable하다고 함 컬렉션 타입(컨테이너 타입) set, dictionary와 같이 여러개의 요소(객체)를 갖는 데이터 타입 ​ 시퀀스 타입 list, tuple, range, str등과 같이 순서가 존재하는 데이터 타입 위의 타입들은 전부 iterable하지만, iterator는 아니다. a = list() b =.. 2022. 3. 2.
[Python] *args, **kwargs은 어떤 거고, return된 객체의 type은 어떻게 나오는지 정리 1. *args란? arguments의 줄인말로 가변 인자를 위한 변수 def add(*args): result = 0 for i in args: result += i print(result) 위와 같은 매개변수로 *args가 들어가 있는 함수를 본 적이 있을 것이다. 해당 args는 통상적으로 가변 인자를 위한 변수의 이름이지 *whateveryouwant, *spidyweb 과 같은 변수명을 채택해도 됨(앞의 *가 중요) 앞에 *를 붙이면 가변 인자를 위한 변수로 인식 되어 여러개의 매개 변수를 입력 할 수 있게 됨 물론, 입력하지 않아도 됨 *args에 값을 집어 넣으면 args 변수는 튜플 형태가되고 그 안에 값이 담기게 됨 1,2,3을 전달 인자로 입력 아무것도 전달 인자로 입력하지 않음 그렇다.. 2022. 1. 27.
[Python] 콜백함수란? map함수란? CallBack function 함수의 인자로 사용되는 함수를 callback 함수라고 한다. MapReduce의 Map함수, 공백을 기준으로 입력을 받아 int타입으로 변환하는 Map함수 같은 기능을 나타내며 이렇게 map(function , iterable) 처럼 함수내에서 함수를 인자로써 사용되는 함수를 콜백 함수라고 함 map(function, iterable) 함수 function에는 사용자 정의 함수가 올 수 있고, 내장함수도 올 수 있으며, 람다식으로도 표현이 가능하다 list(map(lambda x:x**2, range(5))) A,B = map(int, input().split()) *iterable 객체란? list, dict, set, str, bytes, tuple, range 타입.. 2022. 1. 24.
[Python] list, dictionary, tuple 내장 함수 zip으로 다루기 zip 다루기 zip은 두 개의 리스트를 서로 묶어줄 때 사용합니다. list_1 = ["a","b","c","d"] list_2 = [1,2,3,4,5,6,7] #list 2개를 묶어 새로운 tuple들의 list 생성 new_list = list(zip(list_1, list_2)) print(new_list) #tuple들의 리스트인 [('a', 1), ('b', 2), ('c', 3), ('d', 4)] 출력 #index가 작은 쪽에 맞춰서 출력된다. 다음과 같이 묶인 list의 각 값을 출력 할 수도 있습니다. list_1 = ["a","b","c","d"] list_2 = [1,2,3,4,5,6,7] #tuple들의 list는 각 값을 출력할 수 있다. for n, p in zip(list_1.. 2022. 1. 20.
[python] python으로 MYSQL 연결하기(windows) with odbc, mysql-connector-python 1. mysql-connector-python 1) mysql-connector-python library 설치 pip install mysql-connector-python 2) mysql 연결 미리 만들어 둔 mysql DB의 정보를 mysql connection 객체에 담는다 import mysql.connector mydb = mysql.connector.connect( host="ip주소", user="계정 아이디", passwd="계정 비밀번호", database="생성한 DB이름" ) 3) 데이터 조회해보기 def select_all(): #조회 함수생성 cur = mydb.cursor() #커서 객체생성 sql ='''SELECT * FROM DB.Table명''' #조회 SQL cur.e.. 2022. 1. 20.
[python] 클래스(class), 객체(object), 인스턴스(instance), 매개변수 self, 생성자(constructor), 상속(inheritance), 오버라이딩(overriding) 1. 클래스란(class)? python은 객체지향을 지원하고, 함수형 프로그래밍도 가능한 언어 class는 객체 지향 프로그래밍에서 특정 객체를 생성하기 위해 변수와 메소드를 정의하는 일종의 틀 *객체를 정의하기 위한 상태(*멤버 변수)와 *메서드(함수)로 구성 함수와 비교했을 때, 클래스 사용의 장점 함수가 점차적으로 늘어 나게 된다면 무슨 역할을 하는지 의미를 파악하기 어려워지므로, 클래스를 통해 메소드를 구현하게 되면, 비슷한 역할을 하는 것을 한 곳에 모을 수 있게됨 재사용이 가능하다는 것이 가장 큰 장점 *객체 vs 인스턴스 객체란 클래스로 규정된 인스턴스, 변수 대신 실제값을 가짐 인스턴스란 클래스로 만든 객체 인스턴스는 특정 객체가 어떤 클래스의 객체인지를 관계 위주로 설명할 때 사용 a .. 2021. 11. 29.
728x90