🏷️ 식별자 (identifier)
: 프로그램에서 구별을 위해 사용되는 이름
🏷️ 식별자 (identifier) 규칙
▪️ 대소문자 구별
▪️ 숫자는 첫글자로 사용 불가
▪️ 예약어는 변수명으로 사용 불가
▪️ 문자, 숫자, 특수문자 중 (_)사용
🏷️ 변수 사용
반드시 초기값 할당 후 사용
파이썬 언어에서의 변수값 할당 = binding 개념
num = 5 point = 5
⬐ num
5
⬑ pointvar1 = 10 var2 = '123' var3 = var1 + var2 var4 = var3 + 100 var5:int = 10 var6:str = 'python' var1 = var2 = var3 = 10
🏷️ 변수의 자료형 확인
type()
: 변수 및 상수값의 자료형을 확인하는 내장함수
type (상수값)
type (변수이름)
boolVar = True
intVar = 200
type(100)
type(boolVar)
type(intVar)
🏷️ 기본 자료형(데이터형) 종류
종류 | 사용예시 | 변수사용 |
---|---|---|
정수 | -10, 0, 10 | num1 = 10 |
실수 | -1.2, 1.2 | real = -1.2 |
문자열 | '123', 'string' | my_string = "123" |
"123", "string" | num_string = '123' | |
Bool | True, False | my_bool = True |
숫자형(정수 / 실수)
진수 값을 문자열로 반환하는 함수
각 진수를 나타내는 접두사
정수 크기 표현
실수 자료형 크기 제한
print(bin(0xf))
print(bin(0o12))
print(bin(12))
print(hex(15))
print(hex(0o12))
print(hex(0b1111))
0b1111
0b1010
0b1100
0xf
0xa
0xf
파이썬은 문자열 표시 기호로 '' 또는 "" 을 구분없이 사용
🏷️ print() 함수를 사용하는 출력 방법
%서식문자
print( "%d" % 출력값 )
print( "%서식문자" % 변수이름 )
두 개 이상의 값 또는 수식의 결과를 출력할 경우
반드시 출력대상을 ( , )로 묶어야함
서식 | 사용예시 | 변수사용 |
---|---|---|
%d, %x, %o | 10, 100, 1234 | 정수 (10진수, 16진수, 8진수) |
%f | 0.5, 3.45, 100.34 | 실수 (부동소수점이 붙은 수) |
%c | 'b', "B", '한', '글' | 한 글자 |
%s | "bB", "한글" | 두 글자 이상 |
#을 %와 x 또는 o 사이에 입력 시
진법을 나타내는 접두사 출력
print("%#x" % 15) → 0xf
print('%#o' % 10) → 0o12
print(bin(0xf))
print(bin(0o12))
print(bin(12))
print(hex(15))
print(hex(0o12))
print(hex(0b1111))
0b1111
0b1010
0b1100
0xf
0xa
0xf
종류 | 사용예시 | 변수사용 |
---|---|---|
필드폭 | %10d, %5f, %20s | 출력값의 필드폭 설정, 우측 정렬, 필드폭이 출력문자열보다 적어도 출력문자열을 모두 출력 |
정밀도 | %.2f, %.3s | 실수 → 소수점 자리수 지정, 문자열 → 좌측부터 정밀도만큼 출력 |
플래그문자 | %-10d, %-4f, %-10s | 좌측 정렬 |
%010d, %04.2f | 우측 정렬 시, 빈 앞칸을 '0'으로 출력 |
print("%08.2f" % 3.456)
00003.46
str.format()
기본 서식으로 {} 사용 ( {} 사이에 공백 입력 불가)
'{ }' .format(출력값)
"{ }" .format(출력값)
인자이름 | 인자종류 | |
---|---|---|
!변환 | !r, !s | !r은 데이터 표현식 그대로 출력 |
!s 는 숫자 → 문자열 | ||
정렬방식 | <, >, ^ | 왼쪽, 오른쪽, 가운데 정렬 |
정수단위 | , | 정수를 세자리씩 , 로 끊어서 표시 |
print('{}'.format(100))
print("{}".format("우리나라"))
print("{!r}".format("우리나라"))
print("{}".format(3.456))
print('{}'.format("C"))
100
우리나라
'우리나라'
3.456
C
{ 인덱스 : 서식문자 } 에서 인덱스는
10,20,30 순이면 10의 인덱스는 0,
20의 인덱스는 1 의 순
f-string
f"{ 출력값:서식 } { 출력값:서식 } …"
f"{ 출력값=:서식 } { 출력값=:서식 } …"
var1 = 34
var2 = 5.25
var3 = "Hello Python!"
print(f'{var1}, {var2}, {var3}')
print(f'{var1:<10d}, {var2:.2f}, {var3:.5s}')
print(f'{var3}, {var1}, {var2}')
print(f"{var1} * {var2}의 결과는 {var1*var2}")
print(f'{var1=}, {var2=}, {var3=}')
print(f'{var3=!r:*>30s}')
34, 5.25, Hello Python!
34 , 5.25, Hello
Hello Python!, 34, 5.25
34 * 5.25의 결과는 178.5
var1=34, var2=5.25, var3='Hello Python!'
var3=***************'Hello Python!'
🏷️ 파이썬에서 제공하는 출력 내장함수
print( 출력값…, sep= ' ', end='\n', file=sys.stdout, flush=False )
함수명 | 기능 |
---|---|
value | 출력값 |
sep | 출력값 사이의 문자(구분자), 기본값은 공백문자 |
end | 마지막 출력값 뒤에 출력할 문자, 기본값은 \n 임 |
print("python", "happy", sep=",", end="하트")
print(10, 20, sep="&", end="\t")
print(r"'\t' 는 일정간격으로 커서를 옮기는 이스케이프 문자")
함수명 | 기능 |
---|---|
file | value 의 출력 형태, 기본은 표준출력(sys.stdout) 즉 기본 화면(모니터)에 출력 |
flush | 출력값의 buffered 여부, 기본은 False 로 데이터를 buffered 시킴 |
단 end의 값이 \n 이면 flush 값의 여부에 관계없이 자동으로 flush 됨 |
import time
for i in range(10):
print(i, end= ' ', flush=False) # True 변경 시 확인
time.sleep(1)
print("출력", flush=True)
🏷️ 입력함수 사용법 ( input() )
변수이름 = input("입력 코멘트")
input 함수로 입력되는 값은 모두 문자열 타입
📒 연습 문제
format 함수와 동일한 결과를 얻는 f-string 작성
integer_var = 100
float_var = 3.14156
string_var = "Hi python"
print("{1:0>10f} {0:0^10d} {2:#<20s}".format(integer_var, float_var, string_var))
📝 코드 예시
print(f"{float_var:0>10f} {integer_var:0^10d} {string_var:#<20s}")
📝 실행 결과
003.141560
0001000000
Hi python###########