프로그래밍언어/Python13 파이썬의 특징과 장단점 현재 알고리즘 테스트를 하면서 파이썬을 주로 사용하고있는데 지금 생각해보니 파이썬이 무엇이고 어떻게 동작하는지 장,단점이 무엇인지 명확하게 알고있지 않은것 같아 정리하게 되었다. 1. 파이썬은 인터프리터언어이다. 파이썬은 C,C++등의 소스코드를 기계어로 컴파일해서 실행파일을 만들어 실행하는 컴파일 언어와는 다르게 코드를 한줄씩 읽어 내려가며 실행하는 언어이다. 코드를 한줄씩 읽어나가기 때문에 컴파일언어보다 느리다는 단점을 가지고 있다. 또한 한줄씩 읽어 해석하기 때문에 런타임(자료형) 오류가 난다면 그 위치까지 가야하는 경우가 있었다. 장점으로는 프로그램 수정이 간단하다라는 장점이 있다. 컴파일 언어같은 경우는 프로그램이 수정된다면 소스코드를 다시 컴파일 해야한다. (프로그램의 덩치가 커질수록 컴파일 .. 프로그래밍언어/Python 2020. 8. 13. 파이썬 - 문자열 전처리 과정 : 불필요한 데이터 삭제 및 필요한 데이터 추출 => 문자열 찾기, 문자열 조작, 문자열 치환 등 활용 문자열의 연결 +를 이용한 연결 # abc = "abc" + "님" 문자열의 반복 *를 이용한 반복 # print("=" * 40) # = 을 40번 출력 문자의 선택 인덱스를 이용한 접근 # 리스트와 마찬가지로 -로 접근하면 역순접근이다. 문자열의 범위 선택 문자열[시작인덱스:종료인덱스] 문자열 함수 함수명 기능 예제 문자열.count(찾는문자열) 문자열 출현 횟수 확인 data_str.count("nice") len(문자열) 문자열의 길이 len(data_str) 문자열.find(문자열) 문자열 찾기(앞에서 부터) data_str.find("hey") #시작인덱스 반환, 못찾으면 -1 .. 프로그래밍언어/Python 2020. 1. 23. 파이썬 - 자료구조(셋,딕셔너리) 셋 기본 연산 기호 함수 뜻 예제 & intersection() 교집합 set1 & set2 , set1.intersection(set2) | union() 합집합 set1 | set2 , set1.union(set2) - difference() 차집합 set1 - set2 , set1.difference(set2) 셋 항목추가 함수 뜻 예제 add() 항목추가 set1.add(값) update() 항목추가 set1.update({4, 5, 6}) #여러개의 항목을 집어넣음 셋 항목 제거 함수 뜻 예제 remove() 입력값 제거 set1.remove(9) #9의 값을 제거 pop() 첫번째 항목제거 set1.pop() clear() 모든객체 제거 set1.clear() # {}은 딕셔너리의 리터럴이기때.. 프로그래밍언어/Python 2020. 1. 22. 파이썬 - 모듈과 패키지 표준모듈 : 각기 목적에 맞게 설계되어 있고 다양한 함수, 클래스 등을 제공하며, 별도의 추가 설치 과정 없이 import문으로 로딩해 사용함 import 모듈명 import ~ as ~ 문 import 모듈명 as 별칭 # 별칭을 사용하면 가독성이 좋아질수 있고 편리하게 코딩이 가능하다. 선택적 모듈로딩 from 모듈명 import #예시 from math import radians, ceil, floor, pi #명시적으로 선언해 사용하면, 해당 함수가 어느 모듈에서 로딩되어 사용됐는지 명확히 알 수 있으므로 사용을 권장 #ceil 입력된 값보다 큰값중 가장 최소의 정수 #floor 입력된 값보다 작은값중 가장 최대의 정수 #from import* 문을 사용하면 모듈 혹은 패키지가 가지고 있는 함수,.. 프로그래밍언어/Python 2020. 1. 20. 파이썬 - 예외처리 구문오류 : 해석 단계에서 발생, 잘못된 명령을 입력해 발생함 => 오타나 문법적으로 필수적인 요소가 빠지진 않았는지 찾아 재코딩해야함 예외(exception) : 실행 단계에서 발생, 실행중 예기치 않게 발생함 => 인덱스에러, 타입에러, 벨류에러 등등 예외의 발생시 해결방법 if 문을 이용한 예외의 처리 try~except문을 이용한 예외의 처리 try~except~else 문을 이용한 예외의 처리 try~excpet ~else~finally문을 이용한 예외의 처리 if 문을 이용한 예외의 처리 1. 정수입력 만을 받고싶을때 isdigit() 함수를 이용해 확인해서 체크 정수라면 True를 리턴하고 그외의 값이라면 False를 리턴 예외 발생시 해결 방법 try~except문 예외가 발생했을때 처리 .. 프로그래밍언어/Python 2020. 1. 19. 파이썬 - 내장함수 수치연산함수 함수명 기능 abs() 절대값 변환 divmod() 첫번째 인자를 두번째 인자로 나눴을때 몫과 나머지를 튜플객체로 반환하는 함수 pow() 첫번재로 전달된 인자값에 대해 두번째 인자값으로 제곱한 결과를 반환 시퀀스형/ 반복 가능한 자료형을 다루는 함수 함수명 기능 all() 반복가능한 자료형(문자열 list, set, dictionary, Tuple)을 인자로 전달하여 항목 모두가 True이면 True반환 하나라도 False항목이 있다면 False를 반환하는 함수 any() all()함수와 비슷하나 하나라도 True가 있다면 True를 반환하고 모두가 False일때만 False를 반환 enumerate() List, Tuple, 문자열과 같은 시퀀스형을 입력받아 인덱스를 포함하는 튜플객체를 .. 프로그래밍언어/Python 2020. 1. 18. 파이썬 - 함수의 기초 함수 : 프로그램에서 어떤 특정 기능을 수행할 목적으로 만들어진 재사용 구조의 코드 부분 함수의 장점 하나의 큰 프로그램을 여러 부분으로 나눌 수 있기 때문에 구조적 프로그래밍이 가능해짐 동일 함수를 여러 곳에서 필요할 때마다 호출할 수 있음 수정이 용이함 함수 사용방법 순수 함수(pure function) : 결과값 반환 외에 외부에 영향을 주지 않는 함수 함수형 프로그래밍 지원 언어에서는 순수 함수를 인자, 반환값으로 사용 함수의 선언 def 함수명 (매개변수): 명령문 명령문 return 함수 선언의 위치 문제 인터프리터 언어의 경우 함수의 선언위치가 매우 중요하다. 따라서 함수는 위쪽에 작성해주는 것이 좋다. 매개변수 : 함수 호출시 입력 밧을 전달 받기 위한 변수 전달받은 인자의 값에 의해 타입.. 프로그래밍언어/Python 2020. 1. 17. 파이썬 - 흐름과 제어(반복) for문 : 리스트, 튜플, 사진, 문자열과 같은 객체 항목들을 순회하며 특정 작업을 반복해서 수행하기 위해 사용 for 문의 문법 for 변수 in 순회할 객체 : 명령문 명령문 예시) for문을 활용한 구구단 프로그램 dan = int(input("단을 입력하세요: ")) for i in (1, 2, 3, 4, 5, ,6, 7, ,8 ,9): print("{0} x {1} = {2:>2}".format(dan, i, dan*i) ) dan = int(input("단을 입력하세요: ")) for i in range(1, 10, 1): print("{0} x {1} = {2:>2}".format(dan, i, dan*i) ) 사전객체를 이용해 항목 출력 dogs = {1: "골든리트리버", 2: "진돗개.. 프로그래밍언어/Python 2020. 1. 16. 파이썬 - 웹데이터 가져오기 필요한 모듈 requests, bs4 모듈의 BeautifulSoup 설치방법 : pip install requests pip install Beautifulsoup4 네이버에서 환율을 보고싶다고 하자. url 이라는 변수에 여기 주소를 넣도록 합니다. url = "https://finance.naver.com/marketindex/" requests 모듈을 통해 html 데이터를 요청합니다. response = requests.get(url).text 데이터가 들어왔지만 스페이스나 탭등 보기가 힘든 상태입니다. 좀더 보기쉽게 바꾸도록 해주는것이 BeautifulSoup입니다. data = BeautifulSoup(response, "html.parser") 위처럼 작성하시면 좀더 보기쉽게 바뀝니다. 이.. 프로그래밍언어/Python 2020. 1. 15. 파이썬 - 흐름과 제어(조건문) if문 : 어떤 조건을 만족하는 경우, 명령문을 수행하기 위해 사용 if문의 문법 if 조건식 : 명령문 명령문 #들여쓰기 필수 if 문의 활용(예시) score = 80 if score >= 60: print("%d 점" % score) print("합격입니다.") => 80 점 합격입니다. if 문의 활용(예시2) score = 80 result = "불합격입니다." if score >= 60: result = "합격입니다." print(result) => 합격입니다. #기본값을 불합격으로 설정후 60점 이상이라면 합격입니다. 라고 변경 if ~else 문 : 어떤 조건을 만족하는 경우와 그렇지 않은 경우를 수행하고자 할 때 사용 if ~ else 문의 문법 if 조건식 : 명령문 명령문 else :.. 프로그래밍언어/Python 2020. 1. 15. 파이썬 - 연산자(산술, 대입, 관계, 논리, 비트연산자 , 우선순위) 산술 연산자 연산자 의미 예 + 양변의 값을 더하기 a = 3 + 2 # a = 5 - 양변의 값을 배기 a = 3 - 2 # a = 1 * 양변의 값을 곱하기 a = 3 * 2 # a = 6 / 좌변의 값을 우변의 값으로 나누기 a = 3 / 2 # a = 1.5 // 좌변의 값을 우변의 값으로 나눈 몫 a = 3 // 2 # a = 1 % 좌변의 값을 우변의 값으로 나눈 나머지 a = 3 % 2 # a = 1 ** 좌변의 값을 우변의 값으로 제곱 ㅁ = 3 ** 2 # a = 9 더하기 연산 a, b, c = "2", "3", 4 print(a + b) => 23 #문자열 더하기 연산이므로 합쳐져서 나온다. print(int(a) + int(b)) => 5 #int 형으로 캐스팅해야 원하는 결과가 나.. 프로그래밍언어/Python 2020. 1. 14. 파이썬 - 변수란 무엇인가? 변수 : 값을 저장할 때 사용하는 식별자이다. 대입방식 변수명 = 입력할 값 변수의 종류 num =10 -> 정수형 변수 name = "홍길동" -> 문자열 변수 lst = [1, 2 ,3] -> 리스트 변수 #주의사항 : 변경이 가능한 변수에 의도하지 않은 값이 전달되면, 변수의 자료형이 변경됨 a = 3.14 a = "파이썬" a = True 변수명 : 문자, 숫자, _를 이용해서 만들 수 있다. 숫자로 시작하는 변수명은 만들 수 없다. 대소문자를 구분 한다. 예약어는 변수명으로 사용 할 수 없다.(False, class, is ,try, while 등등) 파이썬의 모든 정보는 객체이다. 변수는 객체에 대한 식별자 역할을 수행한다. var1 = 10 => 메모리 공간에 정수 10의 값을 가진 객체 생.. 프로그래밍언어/Python 2020. 1. 13. 이전 1 2 다음 💲 광고입니다.