Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

보안교과서

[sesac 성동캠퍼스 1기] 11/02 인프라 활용을 위한 파이썬프로그래밍 교육 4일차 본문

SK쉴더스

[sesac 성동캠퍼스 1기] 11/02 인프라 활용을 위한 파이썬프로그래밍 교육 4일차

dogeconfig 2023. 11. 3. 09:06

1. 파일 읽기 와 쓰기

 

파일을 열 때는 open() 함수에서 파일명을 지정하고, 읽기(read)를 의미하는 "r"로 설정함 

나중에 쓰기는 write의 w를 사용한다.

모드(mode) : open() 함수의 마지막 매겨변수 

변수명 = OPEN("파일경로/파일이름", "r")

파일 닫기

변수명.close();

파일에 담아둔 데이터를 읽기 위한 함수 

readline() 한 줄 읽기(?) 파일의 내용을 한 행씩 읽어옴

readlines() 여러 줄 읽기 

 

인코딩 디코딩 

encoding = utf-8

inFile = None # 입력 파일
inStr = "" # 읽어온 문자열
inFile = open("C:/FirstPython/Chapter09/myData1.txt", "r", 
encoding="UTF-8")
inStr = inFile.readline()
print(inStr, end='')
inStr = inFile.readline()
print(inStr, end='')
inStr = inFile.readline()
print(inStr, end='')

inFile.close()

 

end=' ' : 줄바꿈 하지말라고 나와있는데 줄바꿈이 적용된 이유

(?) 

왜 같은 문장으로 할  자동적으로 첫번째 문장 2번째 3번째로 이동하는 것일까?

 

 

inFile = None
inStr = "“

inFile = open("C:/FirstPython/Chapter09/myData1.txt", "r", 
encoding="UTF-8")
while True :
inStr = inFile.readline()
if inStr == "" :
break
print(inStr, end='')
inFile.close()

4문장과 5문장을 구분해야 작동한다. 이유는 뭘까 

위의 코드와의 단점은 위는 3번 입력한 만큼만 나오고 이 코드는 문장끝까지 읽어준다 . 

while True 반복문으로 

inStr = inFile.readline()

instr == "" : 아무것도 없을 때 문장이 인식하지 못할 때 

break를 걸라 

 

그러면 readlines() 는 어떨까 편할 것 같은데

파일의 내용을 한 꺼번에 읽어서 리스트에 저장한다고 한다.

그래서 readline()와 다르게 inList = []를 사용한다. instr = "" 대신에 

inFile = None
inList = []

inFile = open("C:/FirstPython/Chapter09/myData1.txt", "r", 
encoding="UTF-8")

inList = inFile.readlines()
print(inList)

inFile.close()

읽어서 작업해야 할 떄는 이것을 추천한다. 

 

밑에는 print() 함수를 수정해서 파일의 내영이 한 행씩 출력하게 햏준

inFile = None
inList = []

inFile = open("C:\FirstPython/Chapter09/myData1.txt", "r",
encoding= "UTF-8")

inList = inFile.readlines()
for inStr in inList : 
    print(inList, end = "")
    
inFile.close()

 

파일을 여는 방법 

 

파일을 쓰기 위해서도 open() 함수에서 파일명을 지정하고

 

변수명 = open("파일경로/파일이름", "r")

 

글자 암호화 

ord(문자) : 문자의 고유 숫자를 알려줌

chr(숫자) : 숫자의 고유 문자를 알려준다

모드 설명
R 읽기모드 -file을 읽기 모드로 오픈 
W 쓰기모드- file을 쓰기 모드로 오픈
T 텍스트모드 - file을 text mode로 open (default값임)
B 바이너리 모드 - file을 binary 모드로 오픈
X 확인 모드 - 파일이 생성시 존재 여부 확인 모드로 오픈
A 추가모드 - 파일의 마지막에 새로운 내용을 추가하는 모드로 open


 Chapter 10

객체지향 프로그래밍  

클래스 (class)

객체 (objective)

실체 (instance) 

 

class 클래스 이름 : 

# 클래스 생성 코드 구현

class Rabbit : 
#토끼 속성(변수)
모양 = ""
x위치 = 0 
y위치 = 0

토끼의 행동 (메소드)
def goto(이동할 좌표) : 
#토끼를 이동할 좌표로 이동시키는 코드 

# 코드 10-1 

class Rabbit : 
shape = "" # 토끼 모양 
xpos = 0  
ypos = 0

def goto(self,x ,y)
self.xpos = x
self.ypos = y

#토끼 객체 생성 
rabbit1 = Rabbit()
rabbit2 = Rabbit()
rabbit3 = Rabbit()

rabbit1.shape = "원"
rabbit2.shape = "삼각형"
rabbit3.shape = "토끼"

 

 

split() , join () 함수 내용 추가하기