[python] 파이썬 __slots__의 효과
■ 파이썬에서는 각 객체마다 해당 객체의 속성을 저장하기위해 __dict__을 사용하는데, __dict__은 그 형태로 인해 메모리를 많이 사용한다. 이로 인해 수백 수천개의 객체가 생성될 경우, 그에 상응한 수만큼 __dict__이 생성되어 시스템에 부담이 된다. # __slots__은 객체마다 생성되는 __dict__을 생성못하게 하여 메모리 효율성을 높이고, 객체의 속성(변수) 추가(생성)을 제한할 수 있다. class Point3D: __slots__ = ('x', 'y', 'z') # 속성(변수)를 x, y, z로 제한함 def __init__(self, x, y, z): self.x = x self.y = y self.z = z def __str__(self): return '3D 좌표 : (..
2020. 9. 14.
[python] 파이썬 파일 쓰기, 읽기 - open(), read(), readline(), readlines()
■ 파이썬 내장함수인 open()으로 파일 객체를 얻어서 파일을 생성하거나 쓰고, 읽을 수 있다. str1 = 'G2Bgo는 나라장터, 관공서입찰, 공공기관입찰, \ 군부대입찰 등의 경쟁입찰 건들에 대해 AI 분석을 통한 예정가격과 \ 낙찰률을 계산하며, 각 입찰공고 건에 대해 투찰을 할 수 있도록 \ 입찰금액을 제공해주는 입찰정보사이트입니다.' # 파일 쓰기 f = open('./g2bgo.txt', 'w') # 파일 객체 얻기 f.write(str1) f.close() # f는 # 파일 생성 'w' 모드는 기존 파일을 덮어쓴다. # (기존 파일 삭제 후 다시 생성 - 사용 시 주의 필요!!) # 파일객체 반복자(iterator)에 대해 for문으로 읽기 f = open('./g2bgo.txt') fo..
2020. 9. 11.