2016-02-09 34 views
-2

我在Win32平臺上使用Python 3.4。我想打開一個名爲somesettings.ini的文件(只是一個文本文件)並搜索它,直到找到特定行的值。具體來說,我只想提取最小可用空間=行的當前設置(請參閱下面的somesettings.ini的內容)並將其保存在字符串中供代碼中的其他地方使用。在下面顯示的ini文件的示例中,我想結束的字符串將是如何打開文本文件並查找特定的字符串值?

在此先感謝!

[Settings] 
Idle Restart Time=300000 
Minimum Free Space=32000 
Max Record Time=1800 
Deactive VR Timer=1800000 
Use ERS=1 
szaStorageDirectory=D:\ 
szaExportDirectory=Removable 
szaConfigFile=C:\StreamsDefault.sdc 
Enable LED=1 
LED Port Address=3814 
LED On Value=12 
LED Off Value=4 
LED Time Off=5900 
LED Time On=100 
Topmost Window=1 
Grace Period=10000 
Use Fast File Switching=1 

回答

1

此代碼是Python 2.7版:

f=open("somesettings.ini", "r") 
for l in f.readlines(): 
    If "Minimum Free Space" in l: 
     index=l.find('=') 
     res=l[index+1:] 
     break 
f.close() 
+0

您的代碼格式不正確。 –

+0

我很抱歉。我在移動設備上寫了適當的位置,但仍然無法正確格式化。當我有權訪問我的筆記本電腦時,明天會更正它。 – shiva

2

你想爲此使用configparser

>>> import configparser 
>>> config = configparser.ConfigParser() 
>>> config.read(r'somesettings.ini') 
>>> config['Settings']['Minimum Free Space'] 
32000 

您可以這種方式訪問​​[Settings]部分中的任何設置。

此時32000是一個字符串。您需要將其轉換爲int,如果你希望一個int在應用後:

>>> int(config['Settings']['Minimum Free Space']) 
+0

就像一個魅力,謝謝! –

相關問題