* input( ) 함수는 기본적으로 문자열을 리턴한다. input( ) 안에 있는 문자열은 콘솔에 출력된다. int( ) 함수는 문자열을 정수형(Integer)으로 리턴한다.
*print( ) 함수는 매개변수 개수가 가변적이다. 문자열이 들어오면 그대로 출력하고, 숫자가 들어오면 문자열로 디코딩하여 표준출력으로 보낸다. temp1*30.48 처럼 숫자형을 받아서 계산을 할 수도 있다. (표현식이라고 함 evaluation) 심지어 함수의 결과값도 활용할 수 있다.
*print 함수는 다양한 형태로 표준출력의 문자열을 표현할 수 있게 하는 함수다.
temp1 = int(input('Enter a feet: '))
temp2 = int(input('Enter a inch: '))
print(temp1,'feet is ',temp1*30.48, 'cm' )
print(temp2,'inch is ',temp2*2.54, 'cm' )
print(temp1, 'feet', temp2, 'inch is ', round((temp1*30.48)+(temp2*2.54),2))
* input( ) 함수로 키보드에서 입력을 받는다. 입력한 숫자는 eval( ) 함수로 감싼다. eval( )은 표현식을 평가한다. 쉽게말해 계산을 한다. 그리고 num1에 저장한다. 파이썬의 변수들은 선언이 필요없다. 각 변수의 자료형은 컴파일러가 규칙에 의하여 추정한다.
* print( ) 함수에서 평균을 구한다. 두 변수값을 더하고 2로 나눈 값을 출력한다. 나누기를 하면 실수로 자동변환된다.
num1 = eval(input('Enter the first number: '))
num2 = eval(input('Enter the second number: '))
print('The average of the numbers you entered is', (num1+num2)/2)
* input 함수는 기본적으로 키보드로 입력된 값들을 문자열로 받는다. 따라서 print 함수에 문자열로 전달한다.
* input 함수가 숫자값을 받았다면 여전히 문자열이다.
그것은 1을 입력하면 아스키코드 상 16진수로 31이고 10진수로 49의 값을 메모리에 저장한다는 말이다. 이것을 인코딩이라고 하며, 실제로 연산이 가능한 1은 아니다. 이진수 0000 0001 은 문자 1과 다르다. 아스키코드의 데이터를 받으면 문자 1을 화면에 출력하라는 약속이다.
*아스키 코드에 대한 참고
https://digiconfactory.tistory.com/129
따라서 eval( ) : evaluation 약자. 함수를 사용하여 문자열들을 표현식(수식)으로 변형하여 num에 반환한다. 수식이기 때문에 단일값 뿐아니라 식을 사용할 수 있다. 피연산자(Operand)로도 변수도 사용가능하다. print 함수에서는 또다시 num을 표현식에서 계산하고 문자열로 표시한다.
name = input('Enter your name: ')
print('Hello, ', name)
num = eval(input('Enter a number: '))
print('Your number squared:', num*num)
* ' ' 따옴표를 사용하는 테크닉이다.
print('Hey What' 's going on?') #' 따옴표로 감싸면 문자열이 된다. 이 중간에 ' 따옴표를 넣고 싶으면 ' 를 한번 더 찍는다.
print (' 5 + 5 ') #표현식이 아니라 '따옴표로 묶은 문자열이다.
print(5+5) #따옴표가 감싸지 않았다. 표현식이다. 계산한 숫자가 print 함수의 매개변수가 된다.
print('The sum of 5+5 is', 5+5) #따옴표가 감싼 부분은 문자열 , 콤마로 한칸 띄어 구분하고 표현식이 계산된다.
print('A', 100, 'DEF', 50) #문자열은 따옴표가 감싸고, 그냥 리터럴은(100,50) 문자로 표시된다.
print('The sum of 5+5 is', 5+5, '.') #5+5는 표현식 그 다음에 , 쉼표가 오고 다시 문자열이 나온다.
print('The sum of 5+5 is', 5+5, '.', sep='*') #sep='*' 를 지정할 시에는 sep에 들어간 문자,문자열이 분리자가 된다. separation. 콤마와 콤마 사이에 들어간다.
print('On the first line', end='\n') #end 에 들어가는 \n은 라인체이지이다. 원래 print 함수는 라이체인지를 한다. 안하고 싶으면 end = ' '이라고 하면 라인체이지 할 부분에서 한칸만 띈다.
print('On the second line') #위쪽 print함수와 함께 본다.
print('Hey What's going on?')
print('5+5')
print(5+5)
print('The sum of 5+5 is', 5+5)
print('A', 100, 'DEF', 50)
print('The sum of 5+5 is', 5+5, '.')
print('The sum of 5+5 is', 5+5, '.', sep='*')
print('On the first line', end='\n')
print('On the second line')
알고리즘 공부할 때 많이하는 도형그리기이다. 사각형 삼각형 등을 그릴 수 있다. 다른 포스트에서 더 자세히 다룰예정
print("*******************")
print("* *")
print("* *")
print("*******************")
*참고 파이썬 동영상 튜토리얼