Mô-đun configparser từ thư viện tiêu chuẩn của Python xác định chức năng để đọc và ghi các tệp cấu hình như được sử dụng bởi Hệ điều hành Windows của Microsoft. Các tệp như vậy thường có phần mở rộng .INI.
Tệp INI bao gồm các phần, mỗi phần được dẫn đầu bởi một tiêu đề [section]. Giữa các dấu ngoặc vuông, chúng ta có thể đặt tên của phần. Theo sau phần này là các mục nhập khóa / giá trị được phân tách bằng ký tự =hoặc:. Nó có thể bao gồm các nhận xét, có tiền tố là # hoặc; Biểu tượng. Tệp INI mẫu được hiển thị bên dưới -
[Settings] # Set detailed log for additional debugging info DetailedLog=1 RunStatus=1 StatusPort=6090 StatusRefresh=10 Archive=1 # Sets the location of the MV_FTP log file LogFile=/opt/ecs/mvuser/MV_IPTel/log/MV_IPTel.log Version=0.9 Build 4 ServerName=Unknown [FTP] # set the FTP server active RunFTP=1 # defines the FTP control port FTPPort=21 # Sets the location of the FTP data directory FTPDir=/opt/ecs/mvuser/MV_IPTel/data/FTPdata # set the admin Name UserName=admin # set the Password Password=admin
Mô-đun configparser có lớp ConfigParser. Nó chịu trách nhiệm phân tích cú pháp danh sách các tệp cấu hình và quản lý cơ sở dữ liệu đã phân tích cú pháp.
Đối tượng của ConfigParser được tạo bằng câu lệnh sau -
parser = configparser.ConfigParser()
Các phương thức sau được định nghĩa trong lớp này -
phần () | Trả lại tất cả các tên phần cấu hình. |
has_section () | Trả về liệu phần đã cho có tồn tại hay không. |
has_option () | Trả về liệu tùy chọn đã cho có tồn tại trong phần đã cho hay không. |
tùy chọn () | Trả lại danh sách các tùy chọn cấu hình cho phần được đặt tên. |
read () | Đọc và phân tích cú pháp tệp cấu hình được đặt tên. |
read_file () | Đọc và phân tích cú pháp một tệp cấu hình, được cung cấp dưới dạng đối tượng tệp. |
read_string () | Đọc cấu hình từ một chuỗi đã cho. |
read_dict () | Đọc cấu hình từ từ điển. Khóa là tên phần, giá trị là từ điển với các khóa và giá trị phải có trong phần. |
get () | Trả về giá trị chuỗi cho tùy chọn được đặt tên. |
getint () | Giống như get (), nhưng chuyển đổi giá trị thành một số nguyên. |
getfloat () | Giống như get (), nhưng chuyển đổi giá trị thành float. |
getboolean () | Giống như get (), nhưng chuyển đổi giá trị thành boolean. Trả về Sai hoặc Đúng. |
mục () | trả về danh sách các bộ giá trị với (tên, giá trị) cho mỗi tùy chọn trong phần. |
remove_section () | Xóa phần tệp đã cho và tất cả các tùy chọn của nó. |
remove_option () | Xóa tùy chọn đã cho khỏi phần đã cho. |
set () | Đặt tùy chọn đã cho. |
write () | Viết trạng thái cấu hình ở định dạng .ini. |
Tập lệnh sau đọc và phân tích cú pháp tệp 'sampleconfig.ini'
import configparser parser = configparser.ConfigParser() parser.read('sampleconfig.ini') for sect in parser.sections(): print('Section:', sect) for k,v in parser.items(sect): print(' {} = {}'.format(k,v)) print()
Đầu ra
Section: Settings detailedlog = 1 runstatus = 1 statusport = 6090 statusrefresh = 10 archive = 1 logfile = /opt/ecs/mvuser/MV_IPTel/log/MV_IPTel.log version = 0.9 Build 4 servername = Unknown Section: FTP runftp = 1 ftpport = 21 ftpdir = /opt/ecs/mvuser/MV_IPTel/data/FTPdata username = admin password = admin
Phương thức write () được sử dụng để tạo tệp cấu hình. Tập lệnh sau định cấu hình đối tượng phân tích cú pháp và ghi nó vào một đối tượng tệp đại diện cho 'test.ini'
import configparser parser = configparser.ConfigParser() parser.add_section('Manager') parser.set('Manager', 'Name', 'Ashok Kulkarni') parser.set('Manager', 'email', '[email protected]') parser.set('Manager', 'password', 'secret') fp=open('test.ini','w') parser.write(fp) fp.close()