표준 라이브러리인 configparser를 사용하면 .INI 파일을 읽고 쓸 수 있다.
.INI 파일 쓰기
import configparser config = configparser.ConfigParser() config['AAA'] = {} # 섹션을 생성한다 config['AAA']['BBB'] = 'CCC' # 섹션 아래 실제 값을 생성한다 config['DEFAULT']['DDD'] = 'EEE' # DEFAULT 섹션은 기본적으로 생성되어 있어 생성없이 쓸 수 있다 with open('config.ini', 'w') as configfile: config.write(configfile)
- 1 Depth에 반드시 섹션을 생성한 후에 그 아래 값을 생성할 수 있다. (1 Depth에는 값을 생성할 수 없다)
- Depth는 최대 2 Depth까지 가능하다. (2 Depth에는 섹션을 생성할 수 없다)
.INI 파일 읽기 (기본)
import configparser config = configparser.ConfigParser() config.read('config.ini') print("config['AAA']['BBB'] : " + config['AAA']['BBB'])
.INI 파일 읽기 (고급)
import configparser config = configparser.ConfigParser() config.read('config.ini') if not 'AAA' in config: # 섹션이 존재하는지 체크 print("config['AAA'] not exist") if 'BBB' in config['AAA']: # 섹션 아래 값이 존재하는지 체크 print("config['AAA']['BBB'] : " + config['AAA']['BBB']) else: print("config['AAA']['BBB'] not exist") if 'DDD' in config['AAA']: # 섹션 아래 값이 존재하는지 체크 print("config['AAA']['DDD'] : " + config['AAA']['DDD']) else: print("config['AAA']['DDD'] not exist")
- Config 파일이 존재하지 않을 경우는, 에러가 나지 않고 단지 빈 맵으로 반환된다.(DEFAULT 섹션은 존재한다)
참고사항
<테스트 환경> - OS : Windows 10 - Python 버전 : 3.7.5
'1. 연구 모듈 > Python' 카테고리의 다른 글
[Python] 키보드 후킹 - 1. 예제 코드 (0) | 2020.12.21 |
---|---|
[Python] .INI 파일에 설정 읽고 쓰기 - 2. 간편화 코드 (0) | 2020.12.18 |
[Python] 인스턴스 메소드 vs. 정적 메소드 vs. 클래스 메소드 요약 (0) | 2020.09.21 |
[Python] 클래스 변수 vs. 인스턴스 변수 요약 (0) | 2020.08.31 |
[Python] 티스토리용 Markdown 변환기 (0) | 2019.08.05 |