pythonインタフェース自動化テスト-configparserプロファイル解析器詳細使用
14537 ワード
configparserの概要 ConfigParserモジュールはPython 3でconfigparser と名前を変更しました.このモジュールは、ConfigParserクラスを定義する.ConfigParserクラスは基本的なプロファイル解析器言語を実現し、この言語が提供する構造は類似している.iniファイルの構造
iniファイルに関する知識キー値ペア使用可能=または: を区切る sectionの名前は大文字と小文字を区別しますが、optionの名前は大文字と小文字を区別しない です.キー値対の中頭部と末尾の空白文字は 削除する.の値は、複数行 とすることができる.プロファイルには、コメント、コメントを#または;接頭辞 iniファイルの例
操作iniファイル
三部作を認めるインスタンス化ConfigParserクラス プロファイル を読み込む.操作プロファイル
ベースコード
ナレッジポイントを含めるプロファイルに中国語がある場合、read()メソッドを呼び出すには、encoding=「utf-8-sig」パラメータ を渡す必要があります.の最も一般的な操作はget(section,option,fallback=「デフォルト値」)であり、あるoptionの値を取得し、もちろんfallbackを渡すこともでき、optionが存在しない場合、fallbackの値 を返す.
configparserパッケージクラス
configparserをより多重化するために,よく用いられる方法をパッケージクラスに書く.
iniファイルに関する知識
[server]
age = 45
username = yes
# server section
# age、username option
操作iniファイル
三部作を認める
ベースコード
1 import configparser
2
3 filename = 'F:/Interface/config/server.ini'
4 # configparser
5 config = configparser.ConfigParser()
6
7 #
8 config.read(filename, encoding="utf-8-sig")
9
10 # option ( )
11 config.get(section="server", option="username")
ナレッジポイントを含める
configparserパッケージクラス
configparserをより多重化するために,よく用いられる方法をパッケージクラスに書く.
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4 """
5 __title__ =
6 """
7
8 import configparser
9
10
11 class ConfigUtil:
12 # configparser
13 config = configparser.ConfigParser()
14
15 def read(self, filename):
16 """
17
18 :param filename:
19 """
20 self.config.read(filename, encoding="utf-8-sig")
21
22 def get(self, _options, _section='server'):
23 """
24 options
25 :param _options: option
26 :param _section: section
27 """
28 try:
29 # :
30 value = self.config.get(section=_section, option=_options, fallback=" ,key ")
31
32 # :
33 value = self.config[_section][_options]
34 except Exception as e:
35 print(" ")
36 value = None
37 return value
38
39 def get_options_key_value(self, _section):
40 """
41 (name,value) section
42 :param _section: section
43 :return: list[tuple(key,value)]
44 """
45 return self.config.items(_section)
46
47 def get_all_section(self):
48 """
49 section
50 """
51 return self.config.sections()
52
53 def get_options_by_section(self, _section):
54 """
55 section options
56 """
57 #
58 keys = []
59 for _options in self.config[_section]:
60 keys.append(_options)
61
62 # ( )
63 keys = self.config.options(_section)
64 return keys
65
66 def assert_section_in_config(self, _section):
67 """
68 section
69 :param _section: section
70 """
71 return _section in self.config
72
73 def assert_options_in_section(self, _section, _options):
74 """
75 options section
76 :param _section: section
77 :param _options: options key
78 """
79 return _options in self.config[_section]
80
81
82 configUtil = ConfigUtil()
83
84 if __name__ == '__main__':
85 filename = 'F:/imocInterface/config/server.ini'
86 configUtil.read(filename)
87 print(configUtil.get("username"))
88 print(configUtil.get_all_section())
89 print(configUtil.assert_section_in_config("server"))
90 print(configUtil.get_options_by_section("server"))
91 print(configUtil.assert_options_in_section("server", "usernsame"))
92 print(configUtil.get_options_key_value("server"))