[References]
http://pythonstudy.xyz
1. 출력 (Output)
(1) print 함수 : 화면에 값을 출력
함수 인자 안에서 문자열과 문자열을 연결할 때, 공백을 사용할 수도 있지만 '+ 연산자'를 사용해서도 문자열을 연결할 수 있다.
t = 'variable'
print(t)
# variable
print('wake up' ' please')
# wake up please
print('wake up' + 'please')
# wake upplease
두 문자열 사이에 띄어쓰기를 넣고 싶다면 Comma(,)를 이용할 수 있다. 구분자(Sep)의 기본값은 공백이기 때문에 Sep를 지정하지 않고 Comma(,)를 사용하게 되면 사용한 곳에 공백이 들어간다.
print('wake up', 'please')
# wake up please
직접 구분자를 바꿀 수도 있으며, 끝에 들어가는 문자를 변경할 수도 있다. 구분자는 공백이 기본적으로 들어가며, 끝문자는 기본적으로 줄바꿈(\n)이 들어간다.
print('Hello', 'Nice to meet you.', sep='~', end='!')
# Hello~Nice to meet you.!
C 언어 형식으로 출력
print('%d*%d=%d' % (10, 20, 10*20))
# 10*20=200
print('%d/%d=%d' % (10, 20, 10/20))
# 10/20=0
2. 입력 (Input)
(1) input 함수는 사용자가 입력한 문자열 객체를 반환
(2) 인자는 prompt를 이용하여 화면에 출력될 문장을 지정 (생략 가능)
inp = input('input : ')
print(inp)
# input : Python
# Python
inp = input()
print(inp)
# Python
# Python
3. File 입출력
(1) open() 함수
파일 객체 = open(file, mode)
(2) 각 Mode들은 서로 조합해서 사용 가능
wb : Binary, Write Mode
rb : Binary, Read Mode
(3) 파일을 쓰기 모드로 열었을 때, 현재 Directory에 't.txt'란 파일이 없다면 't.txt' 파일을 새로 생성한다.
(4) 만약 't.txt' 파일이 이미 존재한다면, 그 내용을 모두 지우고 새로 작성한다.
(5) write() Method를 통해 파일에 임의의 문자열을 쓸 수 있다.
(6) write() Method를 호출하면 몇 byte를 사용하였는지 정수값을 반환하여 알려준다.
(7) 파일의 사용이 모두 끝났다면 파일 객체를 닫는 close() Method를 호출하여 마무리한다.
f = open('t.txt', 'w')
f.write('Hi, Python')
# 10
f.close()
f = open('t.txt', 'r')
f.read()
# 'Hi, Python'
f.close()
(8) read() Method를 통해 파일의 내용을 모두 읽어들일 수 있다.
f = open('t.txt', 'w')
for i in range(1, 10):
data = "2 * %d = %d\n" % (i, 2 * i)
f.write(data)
f.close()
# 읽기 모드가 기본값 ('r' 생략)
f = open('t.txt')
line = f.readline()
print(type(line))
# <class 'str'>
# line이 빈 문자열일 경우 반복 중단
while line:
# 끝문자 \n을 ''으로 바꿔준다.
print(line, end='')
line=f.readline()
# 2 * 1 = 2 2 * 2 = 4 2 * 3 = 6
# 2 * 4 = 8 2 * 5 = 10 2 * 6 = 12
# 2 * 7 = 14 2 * 8 = 16 2 * 9 = 18
f.close()
(9) readline() Method : 한 번에 한 줄씩 파일로부터 읽어들인다.
(10) readlines() Method : 파일의 내용 전체를 줄 단위로 잘라서 List에 저장
f = open('t.txt')
lines = f.readlines()
type(lines)
for line in lines:
print(line, end='')
# 2 * 1 = 2 # 2 * 2 = 4 # 2 * 3 = 6
# 2 * 4 = 8 # 2 * 5 = 10 # 2 * 6 = 12
# 2 * 7 = 14 # 2 * 8 = 16 # 2 * 9 = 18
f.close()
(11) seek() Method : 현재 파일의 위치(File Pointer)를 지정한 곳으로 이동
(12) tell() Method : 현재 파일의 위치(File Pointer)를 반환
f = open('hangul.txt', 'w')
a = f.write('가나다\n라마바\n사아자\n차카타\n파하')
print(a)
# 18
f.close()
f = open('hangul.txt', 'r')
b = f.tell()
print(b)
# 0
c = f.read()
print(c)
# '가나다\n라마바\n사아자\n차카타\n파하'
d = f.tell()
print(d)
# 36
e = f.seek(0)
print(e)
# 0
g = f.tell()
print(g)
# 0
h = f.readline()
print(h)
# '가나다\n'
i = f.tell()
print(i)
# 8
f.close()