How We Coding

동영상 강의 : http://pythonkim.tistory.com/notice/77


# Day_01_03_if.py


- 들어가기 앞서, 파이썬은 인덴트에 민감하다..!!

- " : "(콜론) 이 나왔을 땐 들여쓰기가 있어야 한다.



# if: else:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
= 13
print(a % 2)        # 1
 
if a%2 == 1:
    print('홀수')     # 홀수
else:
    print('짝수')
 
if a%2:              # 1 은 True
    print('홀수')     # 홀수
else:
    print('짝수')
 
if a:
    print(a)          # 13
 
cs

 


# 문제

# 0 ~ 999 사이의 값을 입력 받아 

# 몇 자리 숫자인지 맞춰보기


1
2
3
4
5
6
7
8
# 문제
# 0 ~ 999 사이의 값을 입력 받아
# 몇 자리 숫자인지 맞춰보기
 
= input("number : ")    # 키보드로 부터 입력을 기다린다., input 안의 문자열은 프롬프트
 
if a >= 100:
    print("3자리 숫자")
cs


- 하지만 위와 같이 작성하면 파이썬은 에러를 발생시킨다.

>> a 에는 str 타입이 저장되기 때문..!!


1
2
3
4
5
= input("number : ")    
print(type(a))            # <class 'str'>
 
= int(input("number : "))   
print(type(a))            # <class 'int'>
cs



- 지금까지 배운 내용으로는 이정도로..


1
2
3
4
5
6
7
if a >= 100:
    print(3)
else:
    if a >= 10:
        print(2)
    else:
        print(1)
cs



# 공백 : space , enter, tab


- 파이썬 인터프리터가 무시하는 세가지. 

1. 스페이스

2. 엔터

3. 탭


1
2
3
4
5
6
print(     'Hello')
print(
 
    'Hello'
)
print(          'Hello')
cs



# elif


1
2
3
4
5
6
if a >= 100:
    print(3)
elif a >= 10:
    print(2)
else:
    print(1)
cs






'Language > Python' 카테고리의 다른 글

<1-7> 정규표현식 with Python  (0) 2018.02.03
<1-6> 정규표현식 (Regular Expression)  (0) 2018.02.02
<1-5> 함수(function)  (0) 2018.02.01
<1-3> 연산자  (0) 2018.01.30
<1-2> 파이썬 입문  (0) 2018.01.29

<1-3> 연산자

Language/Python2018. 1. 30. 08:31

동영상 강의 : http://pythonkim.tistory.com/notice/77


# Day_01_02_Operator.py


# 연산자 : 산술, 관계, 논리, 비트



- 산술 : +    -    *    /    //    %    **    


1
2
3
4
5
6
7
8
9
# 산술 : +    -    *    /    //   %   **
a, b = 175
print(a+b)      # 22
print(a-b)      # 12
print(a*b)      # 85
print(a/b)      # 3.4
print(a//b)     # 3
print(a%b)      # 2 , mod
print(a**b)     # 1419857, 17^5
cs


# 문제


1
2
3
4
5
6
= 37
a1 = n//10
a2 = n%10
 
= a2*10 + a1
print(n)    # 73
cs



- 관계 : >    >=    <    <=    ==    !=


1
2
3
4
5
6
7
8
9
10
11
# 관계 : > >= < <= == !=
 
a, b = 175
print(a, b)
 
print(a > b)    # T
print(a >= b)   # T
print(a < b)    # F
print(a <= b)   # F
print(a == b)   # F
print(a != b)   # T
cs

- 단어에도 대소가 있다. >> 아스키 코드로 비교.

- 대문자보다 소문자가 크다.

- 한글은 유니코드 사용

- True 나 False 도 숫자로 이루어져 있다.

>> 데이터 변환을 통해 확인.


# 형변환(casting) : int    float    str    bool


1
2
3
4
5
6
7
# 형변환(casting) : int, float, str, bool
 
print(int(True))    # 1
print('345')        # 345
print(int('345'))   # 345
print(int(a != b))  # 1
print(int(False))   # 0
cs

# 문제

# 10대인지 판단해보기.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 문제
# 10대인지 판단해보기.
 
age = 15
b1 = age >= 10      # T, F
b2 = age <= 19      # T, F
 
# T * T = T
# T * F = F
# F * T = F
# F * F = F
 
print(bool(b1*b2))  # True
print(age >= 10  *  age <= 19)    # False
print((age >= 10* (age <= 19))    # 1
print(10 <= age <= 19)      # True (python only)

cs




- 논리 : and    or    not

>> 관계 연산자를 묶을 때 사용한다.


1
2
3
4
5
6
7
8
# 논리 : and  or  not
 
print(True and True)    # True
print(True and False)    # False
print(False and True)    # False
print(False and False)    # False
 
print(age >= 10  and  age <= 19)    # True

cs


- 비트 연산자는 pass



'Language > Python' 카테고리의 다른 글

<1-7> 정규표현식 with Python  (0) 2018.02.03
<1-6> 정규표현식 (Regular Expression)  (0) 2018.02.02
<1-5> 함수(function)  (0) 2018.02.01
<1-4> 제어문(if)  (0) 2018.01.31
<1-2> 파이썬 입문  (0) 2018.01.29

동영상 강의 : http://pythonkim.tistory.com/notice/77


IDE : PyCharm


# Day_01_01_Basic.py


1
print('Hello python!')

cs


- 위 한줄을 실행(구동). Run 메뉴 - Run... // 단축키 art+shit+F10

- ... 은 바로 실행되지 않고, 별도의 창이 뜬다는 뜻. 

- 파이참은 파일 기반으로 원하는 파일을 선택하여 실행

- 실행한 파일을 다시 실행할 땐, shift+F10



# 문제

# Hello, python! 을 3회 출력하는 코드를 3가지 만들어보기


1
2
3
4
5
6
7
8
9
print('Hello python!Hello python!Hello python!')
 
print('Hello python!'*3)
 
print('Hello python!')
print('Hello python!')
print('Hello python!')
 
print("Hello python!" "Hello python!" "Hello python!")
cs


- 이런 방법들이 있다.

- 마지막의 경우처럼 큰 따옴표를 여러개 늘어놓는 방법도 있다. (작은 따옴표로도 가능하다.)

- 파이썬에서 문자열을 '...' 와 "..."가 완벽하게 동일하다고 한다.


- 마지막의 경우는 하나를 여러개로 나누고 싶을 때 사용한다.


1
2
3
print("Hello python!" \
      "Hello python!" \
      "Hello python!")
cs


- 백슬래쉬( \ ) 로 윗줄과 아랫줄을 연결을 한다.

- 눈에 보이는 그대로 나열을 할 수 있게 된다. (중요..!!)


- 데이터와 데이터를 쉼표로 분리하기.


1
2
print("Hello python!" "Hello python!" "Hello python!")
# Hello python!Hello python!Hello python!
cs


>> 다른 언어를 사용해봤다면 생각해야 한다고 하신다. 반성합니다....


- 모든 프로그래밍 언어는 출력하는 함수는 한번에 여러개를 전달하는 옵션을 제공한다.

  ( 가변인자 )


- print 함수( print() ) 는 따옴표로 묶어 놓은 것을을 화면에 출력한다.



# 프로그래밍 : 프로그램을 만드는 과정

# 프로그램의 구성 요소 : 코드, 데이터

# 데이터 : 변수(변하는 데이터), 상수(변하지 않는 데이터)

# 데이터 : 숫자(실수 float, 정수 integer), 문자(문자열, string), 논리값(boolean)



- 여러가지 형태의 데이터 출력해보기.

1
2
print(3.1456"string", True)
print(type(3.14), type(56), type("string"), type(True))
cs


- 실행결과

3.14 56 string True

<class 'float'> <class 'int'> <class 'str'> <class 'bool'>


# 파이썬에서는 실제로 데이터 타입(자료형)은 존재하지 않는다. 하지만 내부적으로는 구분을 한다.

# 3.14 는 내부적으로 float 이라는 이름을 사용한다.

# 내가 만들지 않은 데이터를 확인할 때 type() 을 사용한다. 

# 여기서 56은 56으로만 사용 가능하다. 그래서 상수라고 한다.



- 변수 만들기

1
2
= 3.14
print(3.14, a)
cs


- 실행결과

3.14 3.14


# = 는 대입연산자(assignment), 오른쪽에 있는 값을 왼쪽에 있는 변수에 넣겠다.

# 여기서 a 는 변수.


1
2
3
4
5
= 3.14
print(3.14, a, type(a))
 
= 56
print(a, type(a))
cs


- 실행결과

3.14 3.14 <class 'float'>

56 <class 'int'>


# 상수는 읽기만 하는 변수.

# 변수는 읽기도 하고 , 쓰기도 할 수 있는 변수.

# 상수가 하는 일은 변수가 다 할 수 있지만, 변수가 하는 일은 상수가 다 하지 못한다.


- newline '\n'

1
print('Hell\no python!')    # newline, 개행문자
cs


- 작은따옴표와 큰따옴표를 쓰고싶을 때.

1
2
print('"Hello"')    # "Hello"
print("'Hello'")    # 'Hello'
cs


- 줄 긋기...

1
print('-'*50)       # --------------------------------------------------
cs



- 참고로 주석('#')의 단축키는 command+'/' (Win 에서는 Ctrl + / )

>> 블럭지정 후 한번에 주석처리 가능하다.


- swap

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
= 7
= 19
print(a, b)     # 7, 19
 
# 문제
# 아래쪽 코드에서 거꾸로 출력하도록 코드 추가하기
# a와 b를 서로 교환한다.
 
# a = 19
# b = 7     # 위에서 값을 변경하면 이 코드는 의미가 없어진다.
 
 
# 콜라와 주스가 담긴 컵이 있다. 내용물을 바꾸고 싶다. 어떻게?
tmp = a        # 빈컵이 필요..!!
= b
= tmp
 
print(a, b)
cs


>> 전에 튜터링을 하면서 지우개 두 개로 설명을 해줬는데, 그때는 공중부양을 시켜 바꿨던 튜티가 

     생각이 난다. 앞으로 콜라와 주스를 통해 설명해줘야겠다.



- 다중치환

1
2
a, b = b, a
print(a, b)
cs


>> 하지만 python 에서 위와 같은 방법은 멍청한 짓이다.

>> 대입 연산자를 통해 값을 여러개 전달 가능하다. 

>> 성능은 위보다는 조금 느리다고 한다.


- 위에서 두 개의 변수를 만들어 초기화 하는 방법은 아래와 같이 할 수 있다.

1
2
3
# a = 7
# b = 19
a, b = 719
cs



- 한 줄에 여러줄을 표현하고 싶을 땐 ';'으로 구분할 수는 있다.

1
= 7; b = 19

c



>> 권장하는 문법은 아니다. 파이썬에서는 ';'를 잘 사용하지 않는다.


'Language > Python' 카테고리의 다른 글

<1-7> 정규표현식 with Python  (0) 2018.02.03
<1-6> 정규표현식 (Regular Expression)  (0) 2018.02.02
<1-5> 함수(function)  (0) 2018.02.01
<1-4> 제어문(if)  (0) 2018.01.31
<1-3> 연산자  (0) 2018.01.30