ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [코딩도장] day2. 변수
    IT/파이썬 2020. 8. 1. 01:47

    ■ 들어가기

    - 파이썬 코딩 도장 (남재윤/길벗). 을 공부하며 정리하는 블로그


    1. 변수 생성

    1) 변수 = 값

    >>> x = 10
    >>> x
    10

    2) 변수1, 변수2, 변수3 = 값1, 값2, 값3

    >>> x, y, z = 10, 20, 30
    >>> x
    10
    >>> y
    20
    >>> z
    30

    3) 변수1 = 변수2 = 변수3 = 값

    >>> x = y = z = 10
    >>> x
    10
    >>> y
    10
    >>> z
    10

     

    2. 변수 삭제 : del

    >>> x = 10
    >>> x
    10
    >>> del x
    >>> x
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'x' is not defined

     

    3. 빈 변수 만들기 : None

    - 변수 = None

    - c++, java에서 변수에 null 할당하는 것과 동일

    >>> x = None
    >>> print(x)
    None

     

    4. 입력 : input()

    - 사용자가 입력한 값을 가져오는 함수

    - 입력받은 값은 항상 문자열 타입으로 처리됨

    => input(), split()의 결과는 항상 문자열 타입

    >>> input()
    Hello, World!
    'Hello, World!'

     

    5. input() 결과 할당

    1) 변수 = input()

    - input() 으로 사용자가 입력한 값을 변수에 저장

    - 입력받은 값은 항상 문자열 타입으로 처리됨

    >>> x = input()
    Hello, World!
    >>> x
    'Hello, World!'
    >>> type(x)
    <class 'str'>

    2) 변수 = input('문자열')

    - 입력 전 문자 출력 ( a.k.a '안내문자열')

    >>> x = input("문자열을 입력하세요: ")
    문자열을 입력하세요: Hello, World!
    >>> x
    'Hello, World!'

     

    6. 다중 입력 : input().split()

    - input() 한 번에 값을 여러 개 입력 받기 위한 방법

    - 콤마(,)로 구분한 여러 개의 변수에 split()을 사용하여 값을 입력 받음

    - split()으로 문자열을 분리해도 결과는 "문자열"

    - 변수1, 변수2 = input().split()

    - 변수1, 변수2 = input().split("기준문자열")

    - 변수1, 변수2 = input("문자열").split()

    - 변수1, 변수2 = input("문자열").split("기준문자열")

    >>> a, b = input('문자열 두 개를 입력하세요: ').split()   # 입력받은 값을 공백을 기준으로 분리
    문자열 두 개를 입력하세요: Hello, World!
    >>> a
    'Hello,'
    >>> b
    'World!'
    >>> print(a)
    Hello,
    >>> print(b)
    World!
    >>>
    >>> a, b = input('문자열 두 개를 입력하세요: ').split(',')
    문자열 두 개를 입력하세요: Hello, World!
    >>> a
    'Hello'
    >>> b
    ' World!'

     

    7. map을 사용하여 정수로 변환

    - split()의 결과를 int, float 타입으로 변환하기 보다 한 번에 split()의 결과를 원하는 타입으로 변경

    => split()의 결과를 int, float 으로 변환할 때는 map을 사용하자!

    - 변수1, 변수2 = map(int, input().split())

    - 변수1, 변수2 = map(int, input().split('기준문자열'))

    - 변수1, 변수2 = map(int, input('문자열').split())

    - 변수1, 변수2 = map(int, input('문자열').split('기준문자열'))

    >>> a, b = map(int, input('숫자 두 개를 입력하세요: ').split())
    숫자 두 개를 입력하세요: 10 20
    >>> print(a+b)
    30
    >>>
    >>> a, b = map(int, input('숫자 두 개를 입력하세요: ').split(','))      # 입력받은 값을 콤마를 기준으로 분리
    숫자 두 개를 입력하세요: 10, 20
    >>> print(a+b)
    30
    >>> # 만일 '기준문자열'로 값이 입력되지 않는 경우 에러 발생!
    >>> a, b = map(int, input('숫자 두 개를 입력하세요: ').split(','))
    숫자 두 개를 입력하세요: 10 20
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: invalid literal for int() with base 10: '10 20'
    >>>

    댓글

Designed by Tistory.