lambda
는 함수를 생성할 때 사용하는 예약어로 def
와 동일한 역할을 한다.
보통 함수를 한줄로 간결하게 만들 때 사용
def
를 사용해야 할 정도로 복잡하지 않거나 def
를 사용할 수 없는 곳에 주로 쓰인다.
# 람다 예제
fAdd = lambda a, b: a+b
result = fAdd(1, 2)
print(result)
# 실행결과 : 3
temp = input("입력 함수 : ")
print(temp)
"""
입력 함수 : aa
aa
"""
문자열 띄어쓰기는 ,
로 구분한다.
a = "gil"
b = "log"
c = "python"
d = "basic"
print(a+b+c+d)
print("gil""log""python""basic")
print(a, b, c, d)
print("gil log python basic")
'''
gillogpythonbasic
gillogpythonbasic
gil log python basic
gil log python basic
'''
매개변수 end=' '
를 사용하면 for
문 에서도 한 줄로 출력 할 수 있다.
for i in range(10):
print(i, end=' ')
'''
0 1 2 3 4 5 6 7 8 9
'''
Python 내장 함수 open()
는 "파일 이름"과 "파일 열기 모드"를 입력값으로 받고 결괏값으로 파일 객체를 return한다.
파일 열기 모드 | 설명 |
---|---|
r | 읽기모드 - 파일을 읽기만 할 때 사용 |
w | 쓰기모드 - 파일에 내용을 쓸 때 사용 |
a | 추가모드 - 파일의 마지막에 새로운 내용을 추가 시킬 때 사용 |
path = "D:/"
file = open(path + "/새파일.txt", 'w')
file.close()
함수 실행 결과 D:/
경로에 새파일.txt
파일이 생성 되었다.
파일을 w
(쓰기)모드로 열면 해당 파일이 이미 존재할 경우 원래 있던 내용이 모두 사라지고, 해당 파일이 존재하지 않으면 새로운 파일이 생성된다.
a
(추가) 모드를 사용하면 존재하는 파일의 내용을 마지막 줄 부터 추가 할 수 있다.
path = "D:/새파일.txt"
file = open(path, 'a')
for index in range(11, 21):
content = "인덱스 %d \n" %index
file.write(content)
file.close()
인덱스 11 ~ 인덱스 20의 내용이 존재했던 파일 마지막 줄 부터 추가되었다.
close()
는 열려 있는 파일 객체를 닫아 주는 함수다.
사실 생략해도 된다.
프로그램 종료시 파이썬 프로그램이 열려 있는 파일의 객체를 자동으로 닫아주기 때문
하지만 close()
를 사용해서 열려 있는 파일을 직접 닫아 주는 것이 좋다.
w
모드로 열었던 파일을 닫지 않고 다시 사용하려 하면 오류가 발생하기 때문
path = "D:/"
file = open(path + "/새파일.txt", 'w')
for index in range(1, 11):
content = "인덱스 %d \n" %index
file.write(content)
file.close()
D:/새파일.txt
에 해당 데이터가 입력 되었다.
path = "D:/새파일.txt"
file = open(path, 'r')
readData = file.read()
print(readData)
'''
인덱스 1
인덱스 2
인덱스 3
인덱스 4
인덱스 5
인덱스 6
인덱스 7
인덱스 8
인덱스 9
인덱스 10
'''
path = "D:/새파일.txt"
file = open(path, 'r')
line = file.readline()
print(line)
'''
인덱스 1
'''
readline()
으로 파일 전체를 읽고 싶다면, while
문을 활용하면 된다.
path = "D:/새파일.txt"
file = open(path, 'r')
while True:
line = file.readline()
if not line: break
print(line)
file.close()
'''
인덱스 1
인덱스 2
인덱스 3
인덱스 4
인덱스 5
인덱스 6
인덱스 7
인덱스 8
인덱스 9
인덱스 10
'''
path = "D:/새파일.txt"
file = open(path, 'r')
lines = file.readlines()
print(lines)
'''
['인덱스 1 \n', '인덱스 2 \n', '인덱스 3 \n', '인덱스 4 \n', '인덱스 5 \n', '인덱스 6 \n', '인덱스 7 \n', '인덱스 8 \n', '인덱스 9 \n', '인덱스 10 \n']
'''
파일 객체는 열어준 후 항상 close해 주는 것이 좋다.
with()
를 사용하면 자동으로 파일 객체 닫기를 처리할 수 있다.
path = "D:/새파일.txt"
with open(path, 'w') as file:
file.write("Gillog FileIOFunction End")