파이썬 입력
www.inflearn.com/course/Python-crawling-basic
파이썬입문과 크롤링기초 부트캠프 (2020 업데이트) [쉽게! 견고한 자료까지!] - 인프런
데이터 과학, 빅데이터, 크롤링을 익히고자 하시는 분들을 위해, (1) 짧은 시간안에 가장 필요한 파이썬 핵심 문법을 정리하고, (2) 실전 크롤링 프로그래밍을 통해 파이썬과 크롤링에 익숙해집니
www.inflearn.com
해당 글은 인프런 잔재미 코딩의 Dave Lee 강사님의 강의 파이썬 입문과 크롤링 기초 부트캠프를 참고하여 작성하였습니다. (www.inflearn.com/course/Python-crawling-basic 링크)
아나콘다 주피터 코드 프로그램을 사용할 것이며 파이썬은 파이썬 3과 파이썬 2가 있는데 파이썬 3 문법을 이용하여 글을 작성하겠습니다. 자세한 내용은 해당 링크에 들어가셔서 강의를 들어주시기 바랍니다. 유료 강의라는 수식어에 걸맞게 현업에서 사용하는 코딩 기술들을 제공해줍니다.
name = input()
다음과 같은 코드블럭을 작성하면 terminal에 입력창이 뜰 겁니다. 하지만 아무거나 입력을 해도 어떠한 반응도 하지 않습니다. 이러한 input() 함수는 화면에 어떤 값을 받게 하는 함수로 키보드 입력받은 값은 name 변수에 할당이 되는 형태입니다. input() 함수는 무조건 입력된 변수에 문자열 타입으로 할당시켜줍니다.
name = input("What is your name?)
input 함수 안에 문자열을 입력하여 입력을 받을 때 해당 문자열이 뜨게 만들 수 있습니다. 위의 코드블럭을 예로 들자면 What is your name?이라는 문자열 옆에 입력하고 싶은 값을 입력할 수 있으며 입력을 하게 되면 name 변수명에 할당됩니다.
name = input("What is your name?")
print("Hi", name)
최종적으로는 이러한 형태의 응용까지 할 수 있습니다. 만약에 input 함수를 이용하여 입력을 받아 nouu라고 입력한다면 print 함수에 의해 Hi, nouu가 출력됩니다.
input은 명령이라고 하지만 엄연히 말하자면 함수입니다. (함수는 뒤에서 더 설명하겠습니다.)
이 함수의 특징은 입력으로 받은 값을 넘길 때 문자열로 넘깁니다. 즉 만약에 입력 값으로 1을 넘긴다면 숫자로서의 1이 아닌 문자로서의 1이 되어 컴퓨터는 문자로 인식합니다.
digit1 = input()
digit2 = input()
print(digit1 * digit2)
예를 들어 위와 같이 코드를 작성하였습니다. 2 곱하기 4를 하고 싶다고 한다면 입력을 받아 2와 4를 순차적으로 입력하면 됩니다. 하지만 can`t multiply sequence by non-int of type 'str'이라는 에러가 뜰 것입니다. 이게 뭐냐면 str이 string이라는 뜻인데 문자와 문자를 어떻게 곱할 수 없다는 에러입니다. 즉, 2와 4는 숫자로 인식하지 않고 문자로 인식되는 걸 확인할 수 있습니다.
- 정수: int
- 부동소수점: float
- 문자열: str
- Boolean: bool
그래서 위와 같은 타입 함수로 wraping 하여 형 변환을 해야 합니다.
digit_str = "123"
digit_int = int(digit_str)
digit = float(digit_str)
print(type(digit_int))
print(type(digit))
위의 코드를 살펴보겠습니다. 문자열 형의 '123'을 digit_str에 할당하고 int형과 float 형으로 변환해주는 것을 볼 수 있습니다. 이후 print를 하면 <class 'int'>와 <class 'float'>으로 나오는 걸 알 수 있으실 겁니다.
함수는 이 부분만 명확히 이해하시면 됩니다.
y = f(x)
y = f( f(x) )
print( type(1) )
수학 시간 때로 거슬러 올라가 봅시다. 어떤 함수에 임의의 값을 넣는다면 y라는 결과가 나오듯 프로그래밍도 어떤 함수에 문자나 숫자를 넣으면 원하는 결과 값이 나오는 구조입니다. 또한 두 번째 함수도 보시다시피 어떤 함수에 임의의 x 값을 넣어 어떠한 결과 값이 나오고 또 f(x)에 나온 결괏값이 x가 되어 한번 더 결과가 나오는 구조입니다. 이 구조를 cascading 구조라고 합니다.
age = int(input("How old are you?"))
print("나이 : ", age)
위 코드를 살펴보면 How old are you?로 입력받은 입력 값에 27을 넣는다고 한다면 input으로 str 형의 '27'이 반환되며, 이후 int로 한번 더 감싸는 구조이므로 str형의 '27' 값이 int형의 27로 반환되는 것을 추측할 수 있습니다. 이후 print 함수로 인하여 나이 : 27이라는 결과 값이 나올 것입니다.
% 참고 %
name1 = "nouu"
name2 = "nouuu"
name1
name2
주피터 노트북에서는 name1과 name2에 변수명을 할당하고 위와 같이 name1과 name2를 적으면 name2 변수만 출력됩니다. name1까지 출력을 하고 싶다면 print(name1)을 하셔야 합니다.
'개발언어 > Python' 카테고리의 다른 글
데이터 구조 첫번째 list - 2 (0) | 2020.11.24 |
---|---|
데이터 구조 첫번째 list (0) | 2020.11.24 |
다양한 출력 포맷과 입력 (0) | 2020.11.24 |
문자열 다루기 (count(), find() , len() , replace() , 인덱싱과 슬라이싱, strip() ) (0) | 2020.11.24 |
데이터 타입과 변수, 출력 (0) | 2020.11.21 |
댓글
이 글 공유하기
다른 글
-
데이터 구조 첫번째 list
데이터 구조 첫번째 list
2020.11.24 -
다양한 출력 포맷과 입력
다양한 출력 포맷과 입력
2020.11.24 -
문자열 다루기 (count(), find() , len() , replace() , 인덱싱과 슬라이싱, strip() )
문자열 다루기 (count(), find() , len() , replace() , 인덱싱과 슬라이싱, strip() )
2020.11.24 -
데이터 타입과 변수, 출력
데이터 타입과 변수, 출력
2020.11.21