SangYoonLee (SYL)
◆ Slow, But Steady ◆
SangYoonLee (SYL)
전체 방문자
오늘
어제
  • ◻ 전체 글 수 : (128)
    • ✪ 취미, 경험 회고 및 일상 (25)
      • [취미] Room Escape (2)
      • [회고] IT 관련 경험 회고 (17)
      • [일상] 일상 생각 (4)
      • [일상] 독후감 (1)
    • ◼ FrontEnd (27)
      • Web & HTML, CSS (8)
      • JavaScript (2)
      • TypeScript (1)
      • ReactJS (16)
    • ◼ CS (3)
      • 자료구조 & 알고리즘 (1)
      • 컴퓨터 구조 (1)
      • 운영체제 (1)
    • ◼ PS Note (40)
      • 백준 (38)
      • 프로그래머스 (2)
    • ◼ IT Etc. (33)
      • (Until 2021) (21)
      • Python (6)
      • C | C# | C++ (1)
      • Git (1)
      • Unity (4)
      • Game Dev. (0)

블로그 메뉴

  • 홈
  • 💻 GitHub
  • 🟢 Velog
  • 🧩 온라인 방탈출 출시 작품 모음

인기 글

최근 글

공지사항

반응형
hELLO · Designed By 정상우.
SangYoonLee (SYL)

◆ Slow, But Steady ◆

◼ IT Etc./Python

[Python] 파이썬 입력 함수 input 사용법 정리

2022. 3. 17. 22:06
반응형

기본 입력 방법

  • python에선 input()함수를 통해 한 줄 단위로 문자열을 입력 받을 수 있다.
a = input()

print(f"a = {a}")

▼ 입력 및 출력 결과

>> Hello World

a = Hello World
>> 4

a = 4    (이때 4는 문자열 "4"이다.)

 


문자열이 아닌 다른 자료형으로 입력 받기

  • input()함수로 입력받을 때, 입력값의 자료형이 정수나 실수여도 문자열로 인식된다.
b = input()

print(b + 1)

▼ 입력 및 출력 결과

>> 4

----> 4 print(b + 1)

TypeError: can only concatenate str (not "int") to str

 

  • 문자열에 숫자를 더할 순 없으므로 에러가 발생하는 것이다.
  • 숫자로만 이루어진 문자열을 다른 자료형으로 바꾸기 위해선, 아래와 같이 형변환을 해주어야 한다.
b = int(input())

print(b + 1)

▼ 입력 및 출력 결과

>> 4

5

 

  • 또는 아래와 같이 값을 우선 입력 받고 형변환을 해줘도 된다.
b = input()
b = int(b)

print(b + 1)

▼ 입력 및 출력 결과

>> 4

5

 

  • 실수형이라면 float()로 감싸주면 된다.
c = float(input())

print(c + 0.32)

▼ 입력 및 출력 결과

>> 2.23

2.55

 


문자열을 나눠서 입력 받기

  • python에서 split()함수는 특정 기준으로 문자열을 자르는 함수이다.

 

  • split()함수를 그대로 사용하면, 공백을 기준으로 문자열을 자르고, 잘려나간 각 요소를 원소로 갖는 하나의 리스트가 만들어진다.
a = input()
print(a.split())

▼ 입력 및 출력 결과

>> Hello World
['Hello', 'World']

 

  • split()함수 안에 다른 문자를 넣으면, 공백 대신 그 문자를 기준으로 문자열을 자른다.
a = input()
print(a.split("."))

▼ 입력 및 출력 결과

>> 20.48.67
['20', '48', '67']

 

  • ✨ input()함수와 split()함수를 같이 이어 쓰면, 입력 받은 문자열을 나눠서 리스트로 바로 저장할 수 있다.
arr = input().split()
n = int(arr[0])
m - int(arr[1])

print(n, m, n * m, sep="\n")

▼ 입력 및 출력 결과

>> 16 12

16
12
192

 


1차원 리스트 입력 (input().split() 활용법)

  • input().split()으로 공백을 사이에 두고 주어지는 입력값을 나눠 받을 수 있다.
arr = input().split()

print(arr)
▼ 입력 및 출력 결과
>> 1 3 5

['1', '3', '5']

 

  • 여기서 map을 활용하면, 입력받는 모든 값에 원하는 함수를 적용시킬 수 있다.
arr = list(map(int, input().split()))

print(arr)
▼ 입력 및 출력 결과
>> 1 3 5

[1, 3, 5]

 

  • 이 때, 입력받을 값의 개수가 고정되어 있으면, list()함수 대신 tuple()함수를 쓰는 것이 좋다. (unpacking 활용)
n, m = tuple(map(int, input().split()))

print(n, m)

▼ 입력 및 출력 결과

>> 1 3

1 3

 

반응형

'◼ IT Etc. > Python' 카테고리의 다른 글

[Python] 변수 Scope (전역 변수와 지역 변수) 에 대한 이해  (2) 2023.02.02
[Python] 조건문  (0) 2023.01.21
[Python] 사칙연산을 위한 연산자  (0) 2023.01.21
[Python] Call by Assignment 이해하기  (0) 2022.04.03
[Python] 파이썬 출력 함수 print 사용법 정리  (1) 2022.03.16
    '◼ IT Etc./Python' 카테고리의 다른 글
    • [Python] 조건문
    • [Python] 사칙연산을 위한 연산자
    • [Python] Call by Assignment 이해하기
    • [Python] 파이썬 출력 함수 print 사용법 정리
    SangYoonLee (SYL)
    SangYoonLee (SYL)
    Slow, But Steady Wins The Race 😎

    티스토리툴바