방통대 컴퓨터과학과

파이썬 프로그래밍 4~5강 순차구조

민장미 2023. 4. 16. 20:14

3강부터 멈춰있었다가 드디어 밀린 강의를 들을 시간이 났다 ㅠㅠㅠ 

포스팅 다 하는 대로 3개 남은거 다 들어버릴거야!! 이번에 새로 신설된 과목이라 기말고사 기출이 없어서

고민되지만 듣고 싶어서 신청한 과목인데 재미있는듯?

 

일단 C++(이론 위주) 수강 , 자바(국비과정 초기) 배우는 중인데, 보통 파이썬부터 점차 어려운 언어를 배우는데

난 어쩌다보니 반대로 가고 있다 ㅠㅠㅠ 그래도 확실히 어려운거부터 하고 나니 파이썬 개쉬움

진짜 이게 돼???하면서 몇 번이나 감탄함. 

 

Java에선 글 입력받기만해도 스캐너 클래스 객체 만들구, 그걸 또 숫자만 받게 하려면

몇 줄 들어가는데 파이썬은 그걸 전부 한줄에 그것도 간단한 키워드 몇 개만 끝남 ㅋㅋㅋㅋㅋㅋㅋ 와 진짜 쉬워

--------------------------

공부한 내용정리 : 변수 뭐 이런건 이미 다 아는 거니 패스

 

python

 -Python 3.0버전부터 유니코드 사용( 자바와 동일)

-연산자는 파이썬 인터프리터에 의해 자동으로 계산된다. 

 

*파이썬만의 차이점 : *****

    - 1. 자료형 안 씀 

    - 2. 기존의 프로그래밍 언어는 { } 중괄호로 영역을 표기했지만, 파이썬은 '들여쓰기'로 함. 그래서 들여쓰기를 함부로 하면 안됌

           (주로 스페이스 4번 권장, 더 중첩시 스페이스 8번 권장)  

    -3. ; 세미콜론 문장 끝에 안써도 된다.

    -4. 통번역이 아닌, 코드 한줄 한줄 실행 

    -5. 함수를 중첩해서 쓸 수 있다. 

 

 

*인용: " ", ' '  더블,싱글 다 사용 가능  / 다만 워드나 한글에서의 " " 와 다르니 복붙해올때 주의해야함

 

*주석(comment): # -> // 역할(자바)       """ -> /* */ 역할(자바)

 

*파이썬에만 있는 새로운 연산자  :   ** (거듭제곱)  ex)  2**2  = 4  (연산자 순위에서 순위가 꽤나 높음 2위? )

                                                         //(정수형 나눗셈) : 알아서 정수형 몫을 반환해줌 ex) 3 // 2 = 1

 

*파이썬 내장함수 :  max, min, round, abs, pow 등 

 

*식별자 : _ 나 문자로 시작, 한글도 가능 

*keyword, reserved word 

 

5강 순차구조 

파이썬에 있는 구조 3가지:

1. 순차구조(Sequence) : 보통 프로그램이 실행되는 대로 위에서 아래로 순서대로 쭉 진행  

2. 선택구조(Selection) : 실행하다가 조건을 만나면, 조건이 맞으면 그 조건식을 따르고, 조건이 안맞으면 스킵 후 순서대로 이어서 진행 

3. 반복구조(Iteration) : 실행하다가 조건을 만나서, 조건이 맞으면 그 조건 영역을 계속 반복

 

 

** 입력 값 받기 코드 비교 **

파이썬 :                                                                                       자바: 


 input( ) 


Scanner sc = new Scanner(System.in);
int a = sc.nextline(); 

 

파이썬(왼쪽)의 코드 저 하나가 오른쪽의 자바 코드 두 줄의 기능을 다 함 ;; 

 

저기의 예시에서 더 나아가서 입력값 받을 떄 :  문자열-> 정수형으로 캐스팅할 때!

 

자바의 nextline처럼 파이썬의 input 함수는  (사용자가 입력한 )입력 값을 우선 문자열로 받아들여서,

숫자만 받기 원할 경우에 정수형으로 캐스팅 해줘야 한다.

 

파이썬                                                                  자바 

int a = int ( input ("숫자를 입력하세요") ) Scanner sc = new Scanner(System.in);

System.out.print("숫자를 입력하세요");

int a = Integer.parseInt(sc.nextline());  

 

자바(오른쪽)은 3줄 작성에다가, 왜 이렇게 써야되는지 구조도 이해해야 하는데...

 

파이썬에선(왼쪽)처럼 한줄로 끝!!! 😎

 

 

와 간단하다 클래스뭐 뭐고 없다 ? !

저번학기 때 파이썬이 개설되었으면 좋았을텐데 ㅠㅠㅠ 어차피 1학기꺼라서 못들었으려나 

 

**int  외에도 str( ) , float ( ) 함수로 간단하게 캐스팅 가능

 

 

** 파이썬의 프로그래밍 오류 **

1. 구문 오류 (Syntax error)  :  파이썬의 문법에 맞지 않아서 발생, 고치기 가장 쉬움

(문법오류)

2.  실행 오류(Runtime error) : 문법적으로 문제는 없으나, 논리적으로 실행이 불가능한 명령문이 있을 경우

(실행 불가능)

3. 의미 오류(Semantic error) : 의미론적으로 잘못 해석이 되는 명령문이 있을 경우

(실행은 되지만 오류)

 

그리고 또 신기했던게, r = int( r ) 이게 되는 듯? 

r이 실수라고 치고,  자기자신을 저리 캐스팅해서 저장 흠..

 

 

** 화면에 출력하기 코드 비교 **

 

자바 :

String a = "사과";

int b = 3; 

System.out.println("나는 "+a+b+"세 입니다.");

이러면 -> 나는 사과3세 입니다.     가  출력 된다.

 

파이썬에선 그냥  print( )라는 함수를 쓰면 된다.

 

다만 + 대신 , 로 다른 자료형을 구분하도록 하고,  sep이라는 옵션으로 공백 조절이 가능하다.

 

이걸 실행시키면 

이렇게 나온다.   , (쉼표)가 자료형을 구분하면서 자동으로 공백이 생긴다.

 

공백을 없애고 싶을 경우엔 

마지막 문장 다음에  쉼표를 한번 더 써주고,  sep= ""를 붙여주면 된다. 

그러면 아래처럼 다른 자료형들 사이에 공백이 사라진다. 

 

6강까지는 포스팅하려고 했는데, 실습 더 하면서 따로 포스팅 해야겠다 ㅠㅠ