SK shieldus Rookies 16기 (인프라 활용을 위한 파이썬 #02)

만두다섯개·2023년 10월 26일
0

SK 루키즈 16기

목록 보기
2/52
post-thumbnail

주요 정보

교육 과정명 : 클라우드기반 스마트융합보안 과정 16기
교육 회차 정보 : '23. 10. 24. 인프라 활용을 위한 파이썬 과정 #2

교육 정리

교육 정리
2일차 : 파이썬 데이터 구조 및 문자열 처리

오늘 배운 첨언(공지내용 포함)

  • 코드리뷰를 할 때 바둑 훈수하듯 거리를 두고 확인
  • 교육자료 PDF 올려줌
  • 다시보기 강좌 2주간 제공 후 삭제 예정

파이썬 오류해결 관련

  • Viusal Studio Code 스크립트 실행 오류 (실행 규칙 변경, 실행 정책은~) (다른 프로그램에서는 정상 실행 된다. 원인 - 가상환경마다 설정다름)
  1. window powershell 관리자 권한 실행
  2. Set-ExecutionPolicy RemoteSigned - A - ExecutionPolicy - RemoteSigned - 스크립트 실행 가능

참고 실습 파일
D:\python_study\pythonProject001
day2 폴더 - test.ipynb

파이썬 특징(장단점, 특징)

  • ** 제곱 의미
  • 흐름제어 함수 종류
    1. if else
    1. if elif else
    2. while break continue
    3. for 변수 in 리스트 #리스트 반복 사용시
  • 기본 함수
    1. print()
    1. input() : 키보드 입력 후 엔터
    2. len() : 문자열 개수 출력
    3. str() : 정수 값을 문자열 값 형식 변환
    4. int(), float()
  • 패키지 설치 명령어 : pip 패키지이름
    파이썬 코어 모듈 내장. 그 외 모듈은 서드파티 모듈이라고 지칭(pip 사용, ananda 같은 프레임 워크를 통해 설치 가능)
  • .jpynb 확장자 파일은 셸 단위 실행(다른 셸 실행한 곳에서 선언한 것은 사용 불가. 셸 단위 실행)
  • .py 단위 확장자는 한번에 실행. .py 단위
  • 파이썬에는 main 함수가 없다. 따라서 name 이라는 내장변수를 사용해
    1. 현재 스크립트 파일이 프로그램 시작점여부 판단
    2. 만약 시작점이 맞다면 아래 코드 실행 가능
if __name__ == "__main__":
    case2()
    exec_func()
  • 모든 스크립트 파일은 파이썬 인터프리터가 최초 실행한 스크립트 파일의 namename 이 들어간다. 이는 시작점(entry point)의미
  • import moduleName : 모듈을 가져오는 명령어. 해당 모듈의 스크립트 파일이 한번 실행 된다.
    import random # 함수 가져오기
    #from random import random  윗줄과 동일 
    for i in range(10):
      print(random.randint(1,5))
    ```    														'''```(이거 오류임)

파라미터 종류

기본 파라미터(위치기반) : 함수 호출시 기본 파라미터 위치 바로 전달
def test(a=10 b=20):
	return a * b
키워드 파라미터 : 함수 호출시 인자의 값과 인자의 이름까지 지정해 전달
def test(server, port):
	str = 'http:///' + server + ":" + port
    return str

test('naver.com', '777')
가변 파라미터
  1. 튜플 가변 파라미터 (*args)
  2. 딕셔너리 가변 파라미터 (**args)
지역변수와 전역변수
  1. 지역변수 : 특정 함수나 블록 내 정의되고 사용되는 변수
  2. 전역 변수 : 프로그램 전체에서 접근 가능한 변수 (메모리 유지)

정규식표현

re(regular expression) 모듈은 파이썬 자동 설치 표준 라이브러리

import re
p = re.comile('ab*)

패턴이란? 정규식을 컴파일한 결과
● 함수 관련 추가

  • call by object-reference 란? 인자로 받은 변수의 주소값을 전달
    - 정수, 문자형(불변형)
  • call by value : 변수 복사한 값을 전달
    - 리스트, 딕셔너리(가변형)
  • 참조
  • copy 명령어 : 모듈 추가
  • copy() 리스트만 복사
  • deepcopy() 내부 리스트 복사

● 모듈이란? .py 파일을 의미한다

  • test.py를 다른 .py에서 import test 로 가져와 해당 모듈 내 정의한 함수 사용가능

● 패키지란? 모듈 파일이 모여있는 파일을 의미한다.

  • tests 파일을 다른 .py에서 import form tests import test 로 가져와 해당 모듈 내 정의 함수 사용 가능

● 정규식 사용 용도? 사용자 입력 유효성 검증, 패턴 기반 감지 및 치환

  • match : 처음부터 문자열 비교해 일치하는지 여부 검사
  • search : 첫 번째 일치하는 패턴 찾기
  • findall : 일치하는 모든 패턴 찾기
  • sub : 패턴으로 치환
  • split : 문자열 대신 패턴으로 문자열 리스트로 분리
profile
磨斧爲針

0개의 댓글