使用 python 从文件中的行分配 agrv[i]
assign agrv[i] from lines in file using python
示例input.dat
[settings]
port = 1234
host = abc.com
如何解析文件,并赋值
1234 to agrv[1]
,
abc.com to argv[2]
等等
这是我尝试过的:
$python p.py input.dat
Traceback (most recent call last):
File "p.py", line 8, in <module>
print config['settings']['host']
AttributeError: ConfigParser instance has no attribute '__getitem__'
p.py
#!/usr/bin/env python
import sys
import ConfigParser
if __name__ == '__main__':
config = ConfigParser.ConfigParser()
config.read(sys.argv[1])
print config['settings']['host']
print config['settings']['port']
如果可以的话我不想用python3
ConfigParser 不支持类似字典的查找。解析文件后,您可以使用它的 get() 方法检索值,该方法有两个参数,部分名称和选项。所以:
config = ConfigParser.ConfigParser()
config.read(sys.argv[1])
print config.get('settings', 'host')
print config.get('settings', 'port')
更多信息在这里:https://docs.python.org/2/library/configparser.html#configparser-objects
示例input.dat
[settings]
port = 1234
host = abc.com
如何解析文件,并赋值
1234 to agrv[1]
,
abc.com to argv[2]
等等
这是我尝试过的:
$python p.py input.dat
Traceback (most recent call last):
File "p.py", line 8, in <module>
print config['settings']['host']
AttributeError: ConfigParser instance has no attribute '__getitem__'
p.py
#!/usr/bin/env python
import sys
import ConfigParser
if __name__ == '__main__':
config = ConfigParser.ConfigParser()
config.read(sys.argv[1])
print config['settings']['host']
print config['settings']['port']
如果可以的话我不想用python3
ConfigParser 不支持类似字典的查找。解析文件后,您可以使用它的 get() 方法检索值,该方法有两个参数,部分名称和选项。所以:
config = ConfigParser.ConfigParser()
config.read(sys.argv[1])
print config.get('settings', 'host')
print config.get('settings', 'port')
更多信息在这里:https://docs.python.org/2/library/configparser.html#configparser-objects