SMALL
python 학습 1일차 정리
[ 0_hello_world ]
# 주석 (comment) : 사용자가 코드 상에 메모를 할수 있도록 제공하는 문법
print("hello, world")
# CTRL + Enter : 현재 셀만 실행.
# ALT + Enter : 현재 셀 실행후, 새로운셀 생성.
# CTRL + M + B : 새로운 셀 생성.
# CTRL + M + D : 셀 삭제
# CTRL + M + L : line_number 보기/안보기
# CTRL + / : 특정행에 대한 주석 삽입/제거
# 블럭 지정후 CTRL + / : 여러행(블럭된 행들)에 대한 주석 삽입/제거
# 주석으로 특정 코드를 잠시 실행되지 않도록 한다.
# print("Hello")
print("World")
# 콜랩 or 주피터 노트북 : 특정행에 대한 주석 단축키 : CTRL + /
print("apple")
# print("banana")
print("cherry")
# print("durian")
[ 1_datatype ]
# 컴퓨터 : compute + er -> 계산기
# 프로그래밍 언어 : 수학을 확장한 개념
# 수학에서의 함수
# f(x) = 2x + 1
# f(2) = 5
# 프로그래밍의 함수 -> 특정기능이 구현되어 있는 코드 덩어리
# print ("hello, world")
# 데이터 타입 : 자료형 -> 값의 종류
# 1. 정수형
# 2. 실수형(부동소수점)
# 3. 문자열형
# 4. 논리형
# #################
# 1. 정수형 : 0, 양수, 음수를 포함하는 수체계
# #################
print(0)
print(-10)
print(32)
# 정수형 데이터에 대하여 산술 연산이 가능.
print( 1+1)
# ^---연산자와 피연산자 사이의 공백이나 개행은 무시됩니다.
print(1+1)
print(1
+
1)
print (1+1)
print(1-1)
print(1/1)
print (1*1)
print(2*9)
# 승수 연산자 또는 제곱 연산자 : 밑수 ** 지수
print(2*2*2*2*2*2*2*2*2*2)
print(2**10) #print(2^10) : 사용 안됨.(지원안함)
print(5/3) # 나눗셈은 결과가 실수로 나옴.
print(6/3)
# 몫만 계산하려면 몫(//) 연산자를 사용.
print(5//3)
# 나머지만 계산하려면 나머지(%) 연산자를 사용.
print(5%3)
# 산술 연산자에는 우선순위가 있고, 수학과 동일.
print(2+2*2)
# 연산자의 우선순위를 변경하기 위해 괄호를 사용할수 있음.
# 이때 괄호는 소괄호(())만 사용가능.
print((2+2)*2)
# 괄호는 1개 이상 사용가능, 중첩가능
print(
((4-2)*3) / (2-1)
)
# 단항 연산자 : 피연산자가 1 개인 연산자
# +: 피연산자의 부호를 유지
# -: 피연산자의 부호를 반전
print(+-10)
print(--10)
# 제곱연산자가 먼저계산된고, - 가 이후에 계산되면서 100이 되고 -100이됨.
print (-10**2)
# -10의 제곱을 계산하려면, 아래처럼 계산되어야함. 괄호로() 음수를 고려해줘야함.
print ((-10)**2)
# 실제는 변수에 넣고 쓰기 때문에 이런문제가 있지는 않을것임.
x= -10
print (x**2)
# 산술 연산자의 우선순위 (동일하면 왼쪽부터 오른쪽으로 수행.)
# 1. 괄호
# 2. 곱셈, 나눗셈
# 3. 덧셈, 뺄셈
# 123 = 1*10**2 + 2*10**1 + 3*10**0 = 100 + 20 + 3
print(1010) # ?
# 해당값이 2진수임을 나타내려면 접두어로 0b(binary)를 사용해야함.
print(0b1010) # 파이썬은 기본적으로 10진법을 사용.
# 어떤값을 2진수로 표현 : bin(binary)
print(bin(0b1010))
print(bin(10))
# 8진수
print(0o10)
print(oct(0o10))
print(oct(10))
# 수의 크기가 커질수록 표현하기가 어려워진다.(길어진다.)
print(bin(10))
print(bin(10000000000000))
# 000 = 0
# 001 = 1
# 010 = 2
# 011 = 3
# 100 = 4
# 101 = 5
# 110 = 6
# 111 = 7
# 8진수
# 8진수 (0o) - oct(octal)
print(0o10)
print(oct(0o10))
print(oct(10))
# 16진수 (0x) - hex , 알파벳 대소문자 구분하지 않음.
print(0x10)
print(hex(0x10))
print(hex(10))
print(0xa)
print(0xA)
# 진법은 값이 서로 다른 표현방법 일뿐이므로 산술 연산에 사용가능.
print( 10 + 0b1010 + 0o12 + 0xa)
# bin(), oct(), hex() 함수를이용한출력결과는산술연산에이용할수없음
# #################
# 실수형: 정수와 소수를 포함하는 수체계
# #################
print(0.0)
print(3.14)
print(-10.25)
# 정수와 마찬가지로 산술연산 가능.
print(1.1 + 1.1)
print(1.1 - 1.1)
print(1.1 * 1.1)
print(1.1 / 1.1)
print(1.1 ** 2)
print(1.1 // 1.1)
print(1.1 % 1.1)
# 주의! 실수는 정수와 다르게 다른 진수로의 표현을 지원하지 않음. (실수는 10진수만 표현 가능.)
# print(0xa.a) # 10.10
# 과학적 표기법
# 100.25 = 1.0025 * 10 ** 2
print(30000000000)
print(3*10**10) # 단점1. 코드가 장황해짐.
# 단점2. 불필요한 연산이 발생.
# 밑수가 10이라고 가정하여 이를 생략한 다음 지수만 사용함.
# 30000000000.0
# 3 * 10 ** 10
print(3.0e+10) # 과학적 표기법의 특성상 그 결과는 항상 실수로 표현됨.
print(3.0e10) # 지수가 양수라면 덧셈기호 생략가능.
print (3e10) # 소수가 0이면 생략가능.
print ( 0.0001 )
print ( 1e-4)
# 사용자의 의도와 상관없이 값이 매우 크거나 작은 경우 지수표기법 그대로 출력됩니다
print(1e15)
print(1e16)
print(1e-4)
print(1e-5)
# ##############
# 3. 문자열
# ##############
# hello -> (ASCII) 1101000 1100101 1101011 1101011 1101111
# 표현방법 : 동일 인용 부호를 쌍으로 사용.
print ("hello")
print ('hello')
# 주의! 서로 다른 인용부호를 사용하면 오류 발생.
# 큰따옴표와 작은따옴표의 차이는? 없음.
# 동일 기능의 서로 다른 인용 부호를 제공하는 이유
# hello, "world" 를 출력하려면?
# print("hello,"world"") - 오류 발생.
# 문자열 안에 큰 따옴표를 포함하려면, 작은 따옴표를 사용해야함
print('hello,"world"')
# 문자열 안에 작은 따옴표를 포함하려면, 큰 따옴표를 사용해야함
print("hello,'world'")
# 추가! 인용부호를 고려하지 않고 포함하는 방법: 백슬래시 (\) 사용
print ("hello,\"world\"")
print ('hello,\'world\'')
# 백슬래시가 들어가야하면? \\ 사용. 두개 들어가야하면? \\\ 세개는? \\\\\
print ("hello,\\\"world\"")
print ("hello,\\\\\"world\"")
print ("hello,\\\\\\\"world\"")
print ("hello" + "world") # strcat("hello", "world")
# 전세계 트랙픽의 60%가 문자열.
# 문자열에 대하여 산술 연산자를 허용합니다. - 다만 산술연산이 아닌 문자열 조작 연산만 가능.
# print ("hello" - "world") #?? ERROR
print("hello"*3) # 됨.
# print("hello"/3) # ERROR
# 덧셈: 문자열 연결
# 곱셈: 문자열을 반복하여 연결
# apple
# banana
# cherry
# durian
print("apple")
print("banana")
print("cherry")
print("durian")
# 삼중 인용부호 : 입력된 그대로 표현하기 위해 사용되는 문자열
print ("""apple
banana
cherry
durian""")
print ('''apple
"banana"
'cherry'
durian''')
print (""" \\\\\\\\
"banana"
'cherry'
durian""")
# #################
# 4. 논리형 : 진리 값을 표현하기 위해 제공되는 타입
# #################
# 10 > 3 -> 참
# 10 < 3 -> 거짓
# 거짓은 0으로 표현
# 참은 0 이외의 모든 수로 표현( 0.15 , -20, 300, ... ) 하되 표현할 때는 대푯값을 1을 사용.
# 10 > 3 => 1
# 10 < 3 => 0
# 어떠한 연산 결과가 0인경우, 산술 연산(1-1)의 결과인지 비교 연산(10<3)의 결과인지 구분하기 어려움.
# 어떠한 연산 결과가 1인경우, 산술 연산(1-0)의 결과인지 비교 연산(10>3)의 결과인지 구분하기 어려움.
# 참과 거짓을 표현하기 위해 1과 0 대신 True 와 False
print(True)
print(False)
# 주의 ! 단어의 첫 문자는 반드시 대문자.
# 논리형 값도 산술 연산에 사용될수 있다. 이는 내부적으로 여전히 1과 0으로 해석되기 때문
print (True + True) # ? 2
print (True * False) # ? 0
# 논리형의 사용 1. 비교 연산의 결과로 사용
print (10 > 3)
print (10 < 3)
print (10 >= 3)
print (10 <= 3)
print (10 == 3)
print (10 != 3)
# 논리형의 사용 2. 논리 연산의 피연산자로 사용 -> 제어구조에서 설명.
# 추가 !
# 다른 진수로의 변환 함수에 대하여 그 결과는 문자열이므로 이를 산술 연산에 사용할 수 없음.
print (0b1010 + 0o12 + 0xA)
# ^----- 정수에 대한 다른 표현
print (bin(0b1010) + oct(0o12) + hex(0xA)) # 문자열로 이해하고 문자를 붙여버림.
print(" \\ ")
print(" \\\ ")
print(" \\\\ ")
print("hello,\\\"world\"")
print("hello,\\\\\"world\"")
print("hello,\\\\\\\"world\"")
print()
[ 2_variable ]
# 변수(variable): 값을 저장하는 상자
# 변수 생성 방법
# 변수명 = 값 ----------> 변수명 : 상자의 이름
# ^---- 대입 연산자: 해당 연산자를 기준으로 오른쪽의 값을 왼쪽의 변수에 저장하는 연산자
# 변수 작명 규칙
# 1. 알파벳 대소문자와 숫자를 사용할수 있음.
# age = 20
# age2020 = 0
# Age2020 = 0
# 2. 숫자로 시작할 수 없음
# 123age = 0 (x)
# 3. 대소문자 구분
# age 와 Age 는 다른 변수
# 4. 특수문자와 공백은 사용할 수 없음
# my-age = 20(x)
# my age = 20(x)
# 5. 단, _(밑줄문자) 허용, 밑줄문자로 시작할수 있으며 단독으로 사용할수도 있음
# myage = 20
# myAge = 20 --> camelCase(낙타표기법) - 자바에서 많이 사용
# my_age = 20 ---> snake_Case(뱀표기법) - c언어에서 많이 사용
# MyAge = 20 ---> PascalCase - class에서 배울예정
# 6. 예약된 키워드 (True, False, if, for, ... ) 는 사용할수 없음
age = 20
# ^---- 대입 연산자 앞뒤의 공백은 무시.
# 변수에 저장된 값을 사용하려면 단순히 변수명을 사용하면 됨.
# 변수가 사용된 자리에는 변수가 가진 값으로 치환되기 때문이다.
print (age) # -> print(20)
# 변수(상자)는 파이썬이 제공하는 모든 타입의 값을 저장할수 있다.
x = 10
print(x)
x = 3.14
print(x)
x= "hello"
print(x)
x = True
print(x)
# 저장된 값이 변한다고 하여 이를 변수라고 함.
# 변수는 연산자와 함께 사용될수 있다.
x = 20
y = 3
ㅌ = 3
#한글도 되네...
print ( x + y + ㅌ ) # -> print ( 20 + 3 + 3 )
print ( x - y - ㅌ )
print ( x * y * ㅌ )
print ( x / y / ㅌ )
print ( x ** y ** ㅌ )
print ( x // y // ㅌ )
print ( x % y % ㅌ )
# 변수의 증감
age = 0
print (age)
age = age + 1 # -> age = 0 + 1 -> age = 1
# code 의 중복사용을 방지하는게 debugging에 좋다.
print (age)
# 복합 대입 연산자 ( +=, -=, *=, /=, **=, //=, %= )
age += 1
print (age)
age += age
print (age)
# 참고 ! 파이썬은 증감 (++,--) 연산자는 지원하지 않음.
++age
print (age) # 동작하지 않음.
# 변수가 가진 값을 확인 : print 함수를 사용하면 됨.
x = 20 # 1
print(x)
x = "20" # 2
print(x)
# 변수가 가진 값의 종류를 확인 : type 함수를 사용
# type 함수를 사용하면 그 값의 종류를 문자열로 알려줌.
x = 20
print(type(x)) # int: 정수형(integer) 타입
x = 3.14
print(type(x)) # float: 실수(float-point) 타입
x = "hello"
print(type(x)) # str: 문자열(string) 타입
x = True
print(type(x)) # bool: 논리(boolean) 타입
a = 10
b = 20
c = 30
d = 40
e = 50
# 파이썬에서는 다수의 변수에 값을 한번에 대입할수 있다.
a, b, c, d, e = 10, 20, 30, 40, 50
print(a)
print(b)
print(c)
print(d)
print(e)
# 주의! 왼쪽 변수의 개수와 오른쪽 값의 개수가 일치하지 않으면 오류가 발생.
x, y, z = 10, 20, 30
# 예외! 왼쪽의 변수가 1개인 경우에는 정상적으로 동작함.
a = 1, 2, 3, 4, 5 # ?
[ 3_output ]
# 모니터 (화면) 으로 값 출력하기
# print 함수를 사용하여 2개 이상의 값을 한번에 출력하려면 쉼표를 사용하면 됨.
print (10, 20, 30, 40)
# ^--- 괄호 안의 공백과 탭 그리고 개행은 무시됨.
print (10,20,30,40)
print (10,
20,
30,
40)
print (10," ", 20,"\t", 30,"\t", 40) # 공백을 넣으려면 어떻게 해야하지?
# print 함수는 파이썬이 제공하는 모든 타입의 값을 출력할수 있음
print(10, 3.14, "hello", True)
# 공백도 하나의 문자이며 다른문자와 다른점은 눈에 보이지 않음.
# 공백 문자를 문자열로 표현하면 다음과 같다.
print(" ")
# 1. 분리자
# 값과 값을 구분하기 위해 사용되는 문자
print(10,20,30,40) #공백이 1개씩 생김.
# 기본값은 공백문자이나 다른 값을 사용하려면 sep 변수를 사용.
print(10,20,30,40,sep=" x ")
print(10,20,30,40,sep=" ^%$#^%$#^%$# ")
print(10,20,30,40) # -> print(10,20,30,40,sep=" ")
# 만약 분리자를 사용하고 싶지 않다면 빈 문자열을 사용.
# 빈 문자열(empty string) : 어떠한 문자도 포함하지 않는 문자열 -> ""
print(10,20,30,40,sep="")
# 제어문자
# 1. 개행문자 : \n(newline)
print("hello\nworld")
# 2. 탭 문자 : \t(tab)
print("hello\tworld")
# 3. 백스페이스 문자 : \b(backspace)
print("hello!\bworld")
# 분리문자를 사용할수 있다.
print(10,20,30,sep=" ")
# 10
# 20
# 30 으로 나타내려면,
print(10,20,30,sep="\n")
print(10,20,30,sep="\n\t!")
# hello
# world
print("hello")
print("world")
# 2. 종료자 : 모든 값을 출력한 후에 마지막으로 출력할 문자를 설정하는 (매개)변수
print(10) #, end="\n") < - 종료자를 설정하지 않으면 기본적으로 개행문자를 사용함.
print(20, end="\t")
print(30, end=" end_재밌넹 ")
print(40, end="" )
print(50)
# 연습문제
name = "홍길동"
age = 20
# 위변수를 사용하여 다음과 같이 출력.
# 이름: 홍길동, 나이: 20
print("이름: ",name,", ","나이: ",age,sep="")
print('이름: ',name,', 나이: ',age,sep="" )
#
# 변환 함수: 어떤 값을 특정 타입으로 변환하는 함수
#
# 1. int
# 2. float
# 3. str
# 4. bool
# 1. int(): 어떤 값을 정수 타입으로 변환하는 함수
print(int(3.14))
print(int(True), int(False))
x = 1 # x라는 변수에 1을 저장하는 코드
y = "1" # y라는 변수에 49를 저장하는 코드
print(int("1")) # 문자값 49를 정수 1로 변환
print(int(y))
# 주의! 문자열에 대하여 정수 변환시, 숫자가 아닌 문자가 포함되면 오류가 발생.
# 즉, 모든 문자열에 대하여 변환할수 있는게 아니라 숫자로만 이루어진 문자열에 대하여 변환이 가능함.
# print(int("Z")) # Error - Z는 숫자가 아니라서 변환이 안됨.
# print(int("A")) # Error - A는 숫자가 아니라서 변환이 안됨.
# 다른 진수의 패턴으로 이루어진 문자열에 대하여 정수변환을 수행하려면 base 변수에 진수를 전달.
print(int("A",base=16)) # 진수를 표현하면(base) 값이 나옴.
print(int("1010",base=2))
#print (int("3.14")) # 실수 패턴의 문자열의 경우, 소수점은 숫자가 아니므로 변환할수 없음.
print (int(float("3.14"))) # float으로 변환하고 int로 하면됨.
# 2. float(): 어떤 값을 실수로 변환하는 함수
print(float(3))
print(float(True), float(False))
print(float("3.14"))
# print(float("3.14",base=16)) - Error : float 는 base 가 안되넹.
print (int(float("3.14"))) # float으로 변환하고 int로 하면됨.
# 주의! 문자열에 대하여 숫자가 아닌 문자가 포함된 경우, 오류가 발생.
# 단, .은 예외
# print(float("X")) # Error
# 실수는 다른진수로의 표현이 지원되지 않음.
# print(float("A",base=16)) # Error
print(float(int("A",base=16))) # Int로 변환후, float로 변환해야함.
# 3. str(): 어떤 값을 문자열 타입으로 변환하는 함수
print(type(str(10)))
print(str(10))
print(type(str(3.14)))
print(str(3.14))
print(type(str(True)))
print(str(True))
# 4. bool(): 어떤 값을 논리 타입으로 변환하는 함수 (0 이외의 모든 값은 True)
print(bool(0))
print(bool(10))
print(bool(3.14))
print(bool("AAA")) # 문자열안에 문자가 최소 1개 이상 있는경우, 이는 참으로 해석.
print(bool("0")) # "0" 도 문자열이기 때문에 참.
print(bool(int("0"))) # "0" 을 숫자로 변환하고 bool을 했기 때문에 False
print(bool(float("0"))) # "0" 을 숫자로 변환하고 bool을 했기 때문에 False
print(bool("")) # False
print(bool(" ")) # True
# 연습문제
name = "홍길동"
age = 20
# 위변수를 사용하여 다음과 같이 출력.
# 이름: 홍길동, 나이: 20
print("이름: ",name,", ","나이: ",age,sep="")
print('이름: ',name,', 나이: ',age,sep="" )
# print('이름: ' + name + ', 나이: ' + age ) # age가 문자열이 아니라서 Error
print("이름: " + name + ", 나이: " + str(age) )
# code가 산만해보임 - 이유는?
#print("이름: ",name,", 나이: ",age,sep="" )
#print("이름: " + name + ", 나이: " + str(age) )
# 파이썬 스럽지 않음.
# 형식을 출력하는 code와 값을 가지는 code가 섞여있어서 그렇다.
# 형식 문자의 사용 (C style)
name = "홍길동"
age = 20
# 사용 방법: "형식 문자를 포함한 문자열" % (값 또는 변수, ...)
print("이름: %s, 나이: %d" % (name,age))
#%s(string): 문자열로 치환하라는 의미
#%d(decimal): 10진수로 치환하라는 의미
#%x(hexa): 16진수로 치환하라는 의미
print("이름: %s, 나이: %i" % (name,age))
print("이름: %s, 나이: %x" % (name,age))
# 만약 값이 1개라면 소괄호를 생략할수 있다.
print("이름: %s" % (name))
print("이름: %s" % name)
# 단점: 사용하기 어렵고, 이해하기 난해함? -> 파이썬스럽지 않다.
# format 메서드(함수)의 사용 =>파이썬 3.0 이상에서만 사용가능.
name = "홍길동"
age = 20
#기존
print("이름: %s, 나이: %d" % (name,age))
#변경
# 0 1
print("이름: {0}, 나이: {1}" .format(name,age))
# 만약 format 함수에 전달된 순서대로 출력한다면, 번호를 생략할수 있다.
print("이름: {}, 나이: {}" .format(name,age))
# 번호를 제공하는 이유 1. 출력순서를 고려하지 않고 값을 함수에 전달하기 위해
print("이름: {1}, 나이: {0}" .format(age,name))
# 번호를 제공하는 이유 2. 값의 중복 전달을 피하기 위해
print("이름: {}, 나이: {} 이름: {}" .format(name,age,name))
print("이름: {1}, 나이: {0:#x} 이름: {1}" .format(age,name))
print("이름: {1}, 나이: {0} 이름: {1}" .format(age,name))
# 단점: 출력하는 개수가 많아지면, 길어짐.
# 형식 문자열(f-string)의 사용 -> python 3.6
# 버전확인
# import sys
# print(sys.version)
name = "홍길동"
age = 20
print("이름: {0}, 나이: {1}" .format(name,age))
print("이름: {name}, 나이: {age}" ) # 기준 문자열 - 지원x
print(f"이름: {name}, 나이: {age}" ) # 형식 문자열 (교재에는 안나옴.)
# 숫자의 형태 변환
print(f"이름: {name}, 나이: {age:#x}" ) # 형식 문자열 (교재에는 안나옴.)
# 중괄호 안에 변수 뿐만 아니라 수식도 사용할수 있음.
dan = 2
num = 9
print("{} x {} = {}" .format(dan,num,dan*num))
print(f"{dan} x {num} = {dan*num}" )
# 숫자 출력 형식을 지정
num = 10
print ("{0}".format(num))
# 1. 특정 진수로의 출력
print ("{0:d}".format(num)) # decimal의 약자로 10진수로 출력하는 의미
print ("{0:b}".format(num)) # binary의 약자로 2진수로 출력하는 의미
print ("{0:o}".format(num)) # octal의 약자로 8진수로 출력하는 의미
print ("{0:x}".format(num)) # hexa의 약자로 16진수로 출력하는 의미(소문자)
print ("{0:X}".format(num)) # hexa의 약자로 16진수로 출력하는 의미(대문자)
#을 사용하면 접두어가 붙음
print ("{0:#d}".format(num)) # decimal의 약자로 10진수로 출력하는 의미
print ("{0:#b}".format(num)) # binary의 약자로 2진수로 출력하는 의미
print ("{0:#o}".format(num)) # octal의 약자로 8진수로 출력하는 의미
print ("{0:#x}".format(num)) # hexa의 약자로 16진수로 출력하는 의미(소문자)
print ("{0:#X}".format(num)) # hexa의 약자로 16진수로 출력하는 의미(대문자)
#f-string
print (f"{num:#x}") # hexa의 약자로 16진수로 출력하는 의미
print (f"{num:x}") # hexa의 약자로 16진수로 출력하는 의미
print (f"{10:#x}")
print (f"{10:#X}")
print (f"0x{10:X}")
# 2. 폭지정 후, 정렬
num = 10
print("|0123456789|")
print ("|{0:d}|".format(num)) # 그냥 순서대로 출력 폭은 글자크기
print ("|{0:10d}|".format(num)) # 폭 10. 기본적으로 오른쪽 정렬 (정수를 공백 포함해 10자리로 표시)
print ("|{0:>10d}|".format(num)) # 폭 10으로 하고 출력된 결과를 오른쪽으로 정렬. (:>)
print ("|{0:<10d}|".format(num)) # 폭 10으로 하고 출력된 결과를 왼쪽으로 정렬. (:<)
print ("|{0:^10d}|".format(num)) # 폭 10으로 하고 출력된 결과를 가운데로 정렬. (:^)
# 폭 지정 후, 빈 공간은 기본적으로 공백 문자로 채워지는데 필요하다면 다른문자를 사용할수 있음.
num = 10
print("|0123456789|")
print ("|{0:#>10d}|".format(num))
print ("|{0:?<10d}|".format(num))
print ("|{0:*^10d}|".format(num))
print ("|{0:0>10d}|".format(num)) # :_> 사이(_)에 원하는것 삽입할수 있음.
print("{0:.3f}".format(10)) # 소수점 3자리까지 실수로 출력.
print("{0:,}".format(1234567)) # ,를 3자리마다 출력.
print("{0:.1%}".format(0.325745)) # %로 표시 반올림.( 소수점 1자리까지 표시 )
print(f"{0.325745:.1%}")
print("{0:.2e}".format(11110000)) # 지수를 소수점 2자리까지 표기
print("{0:.0e}".format(11110000)) # 지수를 소수점 0자리까지 표기
print(f"{11110000:.0e}")
print(1+1)
"hello" # colab의 기능. 파이썬의 기능이 아님.(중간 값이 안나옴.)
1 + 1 # colab의 기능. 파이썬의 기능이 아님.(중간 값이 안나옴.)
9 + 9 # colab의 기능. 파이썬의 기능이 아님.
[ 4_input ]
# 키보드로부터 입력을 수행하려면 input 함수 사용.
# 사용방법
# 변수명 = input()
# input 함수는 사용자가 엔터를 입력하기 전까지 대기하고 있다가 사용자가 엔터를 입력하는 순간 엔터를 입력하기 전까지의 모든 문자를 문자열에 저장하여 돌려준다.
# 사용자로부터 이름을 입력받아 그 값을 출력하는 프로그램.
#name = input() #입력에 대한 설명이 없음.
#print("->",name)
#print("->",type(name))
name = input("이름=") #입력정보를 넣을수 있음.
print("->",name)
print("->",type(name))
# 사용자로 부터 정수를 하나 입력받아 제곱한 결과를 출력.
#num = input("정수입력=")
#print(num**2) # 문자열로 받기때문에 int를 사용해야함.
# print에서 int 변환
#num = input("정수입력=")
#print(int(num)**2)
#print(f"{int(num)**2:10x}")
# num을 int로 변한
num = int(input("정수입력="))
print(num**2)
# 연습문제 1.
# 원의 반지름을 입력(정수 or 실수) 받아 원의 넓이를 출력
# 반지름 * 반지름 *3.14
# 반지름 : 2
# 원의 넓이 : 12.56
num = float(input("반지름="))
print(num*num*3.14)
print(f"{num*num*3.14:<10f}")
# 연습문제 2.
# 사용자로부터 자연수를 입력받아 그 값이 짝수이면 True를 홀수이면 False를 출력하는 프로그램을 구현. 자연수만 입력.
# 자연수 입력 : 2
# True
# 자연수 입력 : 3
# False
num = int(input("자연수입력="))
print((num%2)==0)
print(bool(num%2-1))
print(f"{bool(num%2-1)}")
#print(bool(num%2==0))
LIST
'일 > Python' 카테고리의 다른 글
Python) 학습 - 기본3일차(자료구조: list, tuple, dictionary, set) (1) | 2022.12.21 |
---|---|
Python) 학습 - 기본2일차(if, for, while) (0) | 2022.12.21 |
파이썬(python) - exe 실행파일 만들기 & Error 처리 (0) | 2021.07.09 |
파이썬(python) - win32com 사용하여, excel file 읽기, 저장, csv로 저장하기 (0) | 2021.07.07 |
파이썬(python) - 로또 번호 생성기 lotto (random), (date) (0) | 2021.07.07 |