본문 바로가기
반응형

Python5

파이썬 eval() exec()함수와 취약점 발생 가능성 파이썬에는 명령문, 식 등을 실행시켜주는 내장함수가 존재합니다. eval, exec, compile함수가 있습니다. 1. exec( )&eval( ) 1.1 exec 함수 파이썬 코드 동작시 동적실행에서 사용될 수 있습니다. 문자열, 코드객체를 인수로 받습니다. 문자열의 경우 분석을 한뒤 실행하고 코드객체는 바로 실행됩니다. 반환값은 None (반환을 하지 않습니다.) 실행만을 위해 사용하는 함수입니다. exec(object, globals, locals) # object = 'print("hello world")' globals, locals는 선택사항입니다. 딕셔너리 객체로 받을 수 있습니다. 1.2eval 함수 eval은 인수로 표현식을 받습니다. 표현식을 받아 코드 동작중에 표현식을 실행합니다. .. 2022. 8. 31.
파이썬 math 패키지 (삼각함수, 상수, 로그 사용) math 패키지 고급 수학 함수나 과학 관련 함수가 필요할 때 사용하는 패키지입니다. 파이썬이 설치될 때 같이 설치되어 따로 설치할 필요 없이 바로 사용 가능합니다. pi나 e 같은 특수한 상수 값도 제공합니다. math 패키지 카테고리 삼각함수 : sin, cos, tan 등 기본 삼각함수 역삼각함수 : asin, acos, atan 등 역삼각 함수 하이퍼 삼각함수(쌍곡선) : sinh, cosh, tanh와 asinh 등 쌍곡선 형태의 삼각함수 각도와 라디안 : 흔히 쓰는 각도(º)와 π 같은 라디안 값으로의 변환 각도가 친근할 수 있으나 삼각함수에서는 라디안 값을 사용하므로 라디안으로 변환이 필수적임 로그 : 밑이 2와 10, e 등의 로그를 지원 정수 변환 및 기타 : floor와 ceil 같은 .. 2021. 11. 6.
파이썬 random 패키지 파이썬 프로그래밍을 하다 보면 난수를 필요로 하는 시점이 발생합니다. 파이썬에는 파이썬을 설치하면서 random패키지도 같이 설치되어 따로 모듈을 설치하지 않고 random 패키지를 탑재할 수 있습니다. random 패키지는 단순 난수 도구 이외의 통계에 필요한 간단한 도구를 제공합니다. 간단한 난수 구현기이며 매우 완벽한 100% 난수가 아닌 의사 난수입니다. Random 패키지 함수 random() random.random() 1을 제외한 [0,1) 사이의 실수 무작위 수를 생성합니다. randint(a, b) random.randint(a,b) 동일한 확률로 a~b 범위에 무작위 정수를 반환합니다. b를 포함한 범위이므로 [a, b]입니다. shuffle(list) random.shuffle(lis.. 2021. 10. 31.
파이썬 format 메서드 다양한 포매팅을 돕는 메서드 % 포맷팅보다 더 정교하고 완벽하게 표현하려면 format 메서드를 사용하면 됩니다. 문자열 객체의 기본 제공 메서드로 '문자열'.format(인수들) 또는 문자열 변수 s.format(인수) 형태로 사용이 가능합니다. 물론 아무 문자열이나 다 되는 것은 아니고 포맷이 지시된 문자열이어야 합니다. 변수로 사용하던 문자열 그 자체로 사용해도 똑같습니다. format 메서드 가장 간단한 예입니다 print('{}+{}={}'.format(15,5,20)) 당연하겠지만 문자열 '내용' 부분은 하나의 객체이고 format 메서드를 통해 포매팅하는 것입니다. {} 안에는 어떤 자료형도 상관없이 사용 가능합니다. 변수를 통해 사용하는 것도 가능합니다. 중괄호 자체를 출력하고 싶다면 {{ 혹은 }}로 두 번 연달아 .. 2021. 8. 22.
Stack 개념과 배열 기반 스택 개념 스택은 데이터가 들어갈 때마다 쌓이는 것처럼 보여 Stack이라 부른다. 가장 끝단에서 삽입과 삭제가 모두 일어난다. 후입 선출 형식으로 가장 마지박에 삽입된 원소가 가장 먼저 삭제된다. Last In First Out 이라고도 하며 LIFO구조이다. 스택의 주요 기능 stack의 삽입 push 요소 하나를 삽입하는 과정으로 맨 윗 부분에 추가된다. stack의 삭제 pop 가장 위에 있는 요소를 제거한다. stack의 읽기 peek top에 위치한 값을 삭제하지 않고 반환한다. stack의 범위 검사 isEmpty 스택이 꽉 차있는지 검사한다. 스택의 활용 실행 취소 및 뒤로가기뒤로 가기 : 주로 undo, 뒤로 가기를 눌렀을 때 이전에 방문했던 곳이나 이전 상태로 되돌려질 것이다. 이 기능을 구.. 2021. 5. 22.
반응형