我从这篇文章中得到了一个很好的答案,它涵盖了我想要的一切。
[Box]
box.active = false
resolution_tracker.active = true
box.api_key =
box.api_secret =
box.job_interval = 480
box.max_attempts = 6
box.users =
[Google]
google.active = true
google.job_interval = 480
google.users = <useremail>
google.key_file_name = <key_file>
google.service_account_id = <account_id>
Run Code Online (Sandbox Code Playgroud)
然而,仍然存在的问题是如何去除相等赋值中的空格。例如:
box.active = false
Run Code Online (Sandbox Code Playgroud)
必须是
box.active=false
Run Code Online (Sandbox Code Playgroud)
就是这样,我想删除=
. 该.properties
文件是用ConfigParser
Python生成的,但似乎这些空格正在产生问题。当然,我可以使用其他东西来删除那些空格,但是有没有更优雅的解决方案使用StringIO
,ConfigParser
或任何其他Python
库?
** 编辑 ** 这个问题不是重复的,因为我们试图找到一种更简单的方法来删除=
使用 API周围的空格,而不是重写ConfigParser
类。
ConfigParser.write()
有一个标志
#!/usr/bin/env python3
import sys
from configparser import ConfigParser
from io import StringIO
CONFIG = '''
[Box]
box.active = false
resolution_tracker.active = true
box.api_key =
box.api_secret =
box.job_interval = 480
box.max_attempts = 6
box.users =
[Google]
google.active = true
google.job_interval = 480
google.users = <useremail>
google.key_file_name = <key_file>
google.service_account_id = <account_id>
'''
parser = ConfigParser()
parser.readfp(StringIO(CONFIG))
parser.write(sys.stdout, space_around_delimiters=False)
Run Code Online (Sandbox Code Playgroud)
输出:
[Box]
box.active=false
resolution_tracker.active=true
box.api_key=
box.api_secret=
box.job_interval=480
box.max_attempts=6
box.users=
[Google]
google.active=true
google.job_interval=480
google.users=<useremail>
google.key_file_name=<key_file>
google.service_account_id=<account_id>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1645 次 |
最近记录: |