컴퓨터개론실습 (Python) 컴퓨터과학과배장성
프로그램개념 컴퓨터 : 하드웨어 + 소프트웨어 ( 프로그램 ) 하드웨어 : CPU, RAM( 주기억장치 ), Hard DISK, 소프트웨어 OS( 운영체제 ) Excel, power point, kakao talk, overwatch, etc, Your program also software
프로그래밍언어 프로그래밍언어 동작시키는프로그램을작성하기위한인공적인언어 프로그래밍언어의분류 사용하기편리한정도에따라분류
기계어 컴퓨터가이해할수있는언어 0 과 1 로구성되어있는언어 ( 이진수 ) 0101011100011 0101011111111 컴퓨터는모든것을 0 과 1 로표현하고 0 과 1 에의하여내부회로가동작
프로그램처리기법 컴파일기법 : C, C++ 등
프로그램처리기법 인터프리터 ( 해석 ) 기법 : python, perl 등 고급언어로작성된프로그램을바로실행 해석하는프로그램 : 인터프리터 인터프리터 : 기계어로번역된코드를시뮬레이션
프로그램처리기법 컴파일기법과, 인터프리터기법의장단점 컴파일러 매번번역할필요는없다 인터프리터에비해실행속도가빠름 인터프리터 실행속도가느림 줄단위로번역수행 ( 코드수정이용이 )
WHY Python?
Python Install www.python.org Downloads > windows
Python 설치
Python 설치
파이썬 (python) 이란? 1990 년암스테르담의귀도반로섬 (Guido Van Rossum) 에의해만들어진인터프리터언어 사전적인듯은고대신화속의파르나수스산의동굴에살던큰뱀으로, 아폴로가겔파이에서파이썬을퇴치했다는이야기에서비롯 주로사용되는곳 구글에서만들어진소프트웨어의 50% 이상이파이썬으로만들어졌다고함 유명한파일동기화서비스인 Dropbox 또한파이썬으로만들어짐
파이썬특징 문법이쉬워빠르게학습할수있다 파이썬을공부한지단하루만에자신이원하는프로그램을작성할수있었다고함 ( 프로그래밍경험이있었음 ) 간결하다 강력하다 대부분의모든일을할수있음 : But: 시스템프로그래밍, 하드웨어제어, 복잡하고많은반복연산에는어울리지않음
파이썬특징 무료이다 ( 오픈소스 ) 개발속도가빠르다 C, C++, Java 등으로한달이상걸릴것을 1 주일안에개발가능 python 을이용하여빠르게프로토타입 (prototype) 시스템을구축후, 시스템이검증되면이를 C, C++ 등으로구현 결과적으로전체개발시간을단축시킴
파이썬으로할수있는것 대단히빠른속도를요구하거나하드웨어를직접건드려야하는프로그램을제외한모든일 할수있는것들 시스템유틸리티 : 운영체제시스템명령어지원 웹프로그래밍 : 많은라이브러리가있음 (Django) C/C++ 과의결합 수치연산프로그래밍 :Numpy 데이터베이스프로그래밍
python 자료형 자료형이란프로그래밍을할때쓰이는숫자, 문자열등자료형태로저장되는그모든것 ( 값을저장하는방식을결정 ) python 기본자료형 Number, String, List, Tuple, Dictionary
python 자료형 : Number 항목 Example 정수 123, -345, 0 실수 123.45, -1234.5, 3.4e10 복소수 1 + 2j, -3j 8진수 034, 025 16진수 0x2A, 0xFF
python 자료형 : Number - cont d
python 자료형 : Number - cont d Complex number
python 자료형 : Number - cont d 숫자연산 소수점형태의결과를얻으려면피연산자중한가지라도실수형으로써주어야한다. 위와같은방법을 형변환 이라고한다.
python 자료형 : String 여러개의문자 > 문자열 / 문장 Single quotation( ) 혹은 double quotation( ) 을사용하여데이터를저장 여러문장의문자열 ( ~ ) 및 ( ~ ) 사용
python 자료형 : String - cont d 여러문자열표현방법
python 자료형 : String - cont d 문자열에 single quotation 을포함시킬경우 \( 역슬래시 ) 를이용해 quotation mark 삽입가능 double quotation 을이용하여 single quotation 포함가능 a = I don t agree with you
python 자료형 : String - cont d 문자열이여러줄일경우 Life is too short You need python 줄바꿈문자인 \n 삽입
python 자료형 : String - cont d 연속된 3 개의 double quotation 사용
python 자료형 : String - cont d 특수문자 (Escape code)
python 자료형 : String - cont d 문자열연산 문자열합치기 문자열곱하기
python 자료형 : String - cont d 문자열연산 문자열곱하기
python 자료형 : String - cont d 문자열연산 인덱싱 (indexing), 슬라이싱 (slicing) python index 는 0 부터시작 a = PYTHON
python 자료형 : String - cont d 인덱싱
python 자료형 : String - cont d 인덱싱
python 자료형 : String - cont d 슬라이싱 slice: 한조각, 자르다, 썰다 문자열을잘라내는것
python 자료형 : String - cont d 슬라이싱 a[0:4] 수식으로변환 0 <= a < 4 a[0], a[1], a[2], a[3]
python 자료형 : String - cont d 슬라이싱
python 자료형 : String - cont d
python 자료형 : String - cont d String formatting 문자열내에어떤값을삽입하는방법 현재온도는 14 도입니다. 현재시간은 1 시 10 분입니다. 시간이지나고온도가바뀐다면위의문자열도같이수정해야함 >> 문자열내특정한값을변화시킬필요성 >> string formatting
python 자료형 : String - cont d String formatting 변수대입도가능 : 변수 ( 추후설명, 어떠한값 )
python 자료형 : String - cont d String formatting
python 자료형 : String - cont d
python 자료형 : String - cont d String function
python 자료형 : String - cont d String function
python 자료형 : String - cont d String function
python 자료형 : String - cont d String function
python 자료형 : String - cont d String function
python 자료형 : List 리스트 (C 언어의배열과유사함 ) 리스트를만들때는대괄호를이용 a = [] b = [1, 2, 3] c = [ my, life, for, aiur ] d = [1, 2, my, life ] e = [1, 2, [ my, life ]] 리스트는어떠한자료형도포함할수있다
python 자료형 : List - cont d 리스트인덱싱 life 에대해인덱싱해보세요
python 자료형 : List - cont d 리스트슬라이싱
python 자료형 : List - cont d 리스트연산
python 자료형 : List - cont d a[0], a[0:1] 의차이점 // 인덱싱과슬라이싱의차이점
python 자료형 : List - cont d List function
python 자료형 : List - cont d List function
python 자료형 : List - cont d List function
python 자료형 : Tuple 몇가지점을제외하면리스트와동일함 다른점 : 리스트와달리소괄호를이용하여정의 리스트는값의수정, 삭제가가능했지만, 튜플은값을변화시킬수없음 t1 = () t2 = (1,) t3 = (1, 2, 3) t4 = ( a, b, (1,2,3))
python 자료형 : Tuple - cont d 프로그램이진행되는동안여러데이터를상수 ( 변하지않는값 ) 처럼사용하기위해사용함 days = ( SUN, MUN, TUE,, SAT ) 리스트와마찬가지로인덱싱, 슬라이싱가능 튜플의요소를삭제하려할때에러발생
python 자료형 : Dictionary 이름 = 박신혜, 생일 = 1990 년 2 월 18 일 위와같은대응관계를나타내는자료형을 Dictionary 라고부름 사전과같이 Key: Value 형태로이루어진한쌍의자료형 인덱스를통해각요소의값을구하는리스트나튜플과달리 Key 검색을통해값 (value) 을구함
python 자료형 : Dictionary- cont d {key1: value1, key2: value2, } key 와 value 쌍들이중괄호로둘러싸여있음 key 에는변하지않는값을사용하고, value 에는변하는값과변하지않는값모두사용할수있음 dic={ name : python, category : program language, level :4}
python 자료형 : Dictionary- cont d 딕셔너리쌍추가 {1: 'a'} 라는딕셔너리에 a[2] = 'b' 와같이입력하면딕셔너리 a 에 Key 와 Value 가각각 2 와 'b' 인 2 : 'b' 라는딕셔너리쌍이추가된다
python 자료형 : Dictionary- cont d 딕셔너리 a 에 'name': 'pey' 라는쌍이추가되었다 Key 는 3, Value 는 [1, 2, 3] 을가지는한쌍이또추가되었다
python 자료형 : Dictionary- cont d 딕셔너리요소삭제 위의예제는딕셔너리요소를지우는방법을보여준다. del 함수를사용해서 del a[key] 처럼입력하면지정한 key 에해당하는 {key : value} 쌍이삭제된다
python 자료형 : Dictionary- cont d Key 를이용하여 value 얻기 어떤 Key 의 Value 를얻기위해서는 " 딕셔너리변수 [Key]" 를사용한다
python 자료형 : Dictionary- cont d 딕셔너리주의사항 key 는고유한값이므로중복되는값을사용할경우중복되는것들이무시된다 key 에는리스트및변하는값을사용할수없다
python 자료형 : Dictionary- cont d 딕셔너리함수 함수 a.keys() a.values() a.items() a.clear() a.get(x) a.has_key(x) 정의딕셔너리의 key들을모아놓은리스트를반환딕셔너리의 value들을모아놓은리스트를반환딕셔너리의 Key, value 쌍의튜플을모아놓은리스트를반환딕셔너리의모든 Key,value 쌍을삭제딕셔너리의 Key가x인것의 value를반환딕셔너리에 x라는 key가있는지조사하여, 참, 거짓을반환
python 자료형 : Dictionary- cont d 딕셔너리함수예제
python 자료형 : Dictionary- cont d 딕셔너리함수예제
python 자료형 : Dictionary- cont d 딕셔너리함수예제
python 자료형 : Boolean 참과거짓 (True, False) 자료형 True / False Python True False [1,2,3] True [] False () False {} False 1 True 0 False None False
python 변수 (Variable) 오른쪽예제와같이 a, b, c 를 파이썬변수 라한다 변수를만들때는오른쪽과같이 = (assignment) 기호를사용한다 객체 (object) 를가리키는것으로, 객체는우리가지금껏보아왔던자료형을포함한파이썬에서사용되는모든것
python 변수 변수 a 와 b 가서로 3 이란정수형객체의메모리위치를가리키고있다. 즉, a == b 명령문을실행한다면, 아래의예제와같이 True( 참 ) 를반환 (return) 하게된다
python 변수 변수를만드는여러방법
python 변수 immutable
python 변수 immutable
python 변수 immutable
python 변수 mutable
python 변수 mutable
python 변수 mutable > immutable
python 변수 mutable > immutable
python 제어문 제어문을사용의예 조건에따른분기 100 점이면 A+, 100 미만 90 이상이면 A, 그이하면 B y=[x], 0<= x <1 이면 y=0, 1<= x <2 면 y=1, 반복적인작업 반복되는연산 수천, 수만줄의파일 ( 정보 ) 읽기
python 제어문
python 반복문
python 제어문 : if if 문기본구조
python 제어문 : if cont d if 문기본구조 에러예시
python 제어문 : if cont d 조건문은 True( 참 ) / False( 거짓 ) 을판단
python 제어문 : if cont d 조건문 : 비교연산자 조건판단에가장많이쓰임, 논리적으로이해하기쉽다, 이전페이지의자료형보다쓰이는경우가훨씬많다
python.py 파일생성 (in linux).py 파일생성.py 는파이썬확장자 편집기를이용하여.py 파일생성 원하는파일이름.py e.g. example1.py 소스코드입력후저장 현재작성한코드를실행하기위해 python 명령어를이용 e.g. python example.py
python.py 파일생성 (in windows) Python (shell) 에서 file > new file (ctrl + N) 메모장과비슷한창이하나생김소스코드입력후저장 ( 저장위치는본인이알아서..).py 는파이썬확장자임현재작성한코드실행 = F5 키를누름
python 제어문 : if cont d 조건문 : 비교연산자 3000 원이상돈이있다면택시를타고그렇지않으면걸어가라
python 제어문 : if cont d 조건문 : 논리연산자, (and, or, not)
python 제어문 : if cont d 조건문 : 논리연산자, (and, or, not) 돈이 3000 원이상있거나, 풀러줄시계가있다면택시를타고그렇지않으면걸어가라
python 제어문 : if cont d x in s, x not in s
python 제어문 : if cont d x in s, x not in s
python 제어문 : if cont d x in s, x not in s
python 제어문 : if cont d 만약주머니에돈이있으면택시를타고없으면걸어가라
python 제어문 : if-elif cont d 만약주머니에돈이있으면택시를타고없으면걸어가라
python 제어문 : if-elif cont d 지갑에돈이있으면택시를타고, 지갑엔돈이없지만시계가있으면택시를타고, 돈도시계도없으면걸어가라
python 제어문 : if cont d if 문 : pass 참거짓에따른행동을정의할때아무런일도하지않게끔설정을하고싶을때사용 지갑에돈이있으면가만히있고, 지갑에돈이업으면시계를끌러라
python 제어문 : while while ( 반복문 ) 기본구조
python 제어문 : while cont d while 문빠져나가기 : break 조건에맞지않는경우 while 문을빠져나간다
python 제어문 : while cont d while 문뛰어넘기 : continue 조건에맞지않는경우 while 문의맨처음 ( 조건문 ) 으로돌아가게하고싶을경우사용
python 제어문 : while cont d while 문무한루프
python 제어문 : for 리스트의첫번째요소부터마지막요소까지차례로변수에대입해서 < 수행할문장 1>, < 수행할문장 2>, 를수행
python 제어문 : for cont d 총 5 명의학생이시험을보았는데시험점수가 60 점이넘으면합격이고그렇지않으면불합격이다, 각학생마다번호를부여하고, 합격인지불합격인지보여준다
python 제어문 : for cont d 앞의예제에서, 합격한사람에게축하메시지를보내고나머지사람에게는아무런메시지도전하지마시오
python 제어문 : for cont d range 함수 숫자리스트를자동으로만들어주는함수 시작과끝을정해줄수있다 range( 숫자 ), 숫자만큼의리스트생성, 0 부터 1 씩증가하며순차적으로리스트를채움 range( 시작, 끝 )
python 제어문 : for cont d range 함수예제 i 에 range 함수로생성한리스트 [1, 2, 3,, 10] 값이한번씩차례대로대입됨리스트의끝에도달하면 for 문을나감
python 제어문 : for cont d for 문과 range 함수를이용하여구구단출력하기
python 제어문 : for cont d for 문과딕셔너리
python 제어문 : for cont d
실습 2000 보다작은자연수중에서 3 또는 5 의배수를모두더한값을구하시오 1 부터 100 까지 합의제곱 과 제곱의합 의차를구하시오