将ini文件写为config时出错(需要整数)

时间:2017-08-09 12:56:05

标签: python ini

我想使用ini文件作为配置文件。在programmstart上我读取了ini文件,当程序运行时,我将更改文件中的值(例如日期)。这是我读取ini文件的代码:

inifile = r"C:\Users\A52113242\Desktop\PROJEKTE\[INPROGRESS] AUSWERTUNG COIN + HVL\_tool\cfg\cfg.ini"

config = configparser.SafeConfigParser()
config.read(inifile)

date_hvl = config.get('date', 'date_hvl')
date_coin = config.get('date', 'date_coin')
set_date = time.strftime("%d.%m.20%y")

这是我想要更改" date":

的值的函数
def coin_daten_erstellen():
config.set('date', 'date_coin', set_date)
config.write(sys.stdout)
with open(inifile,'w') as configfile:
    config.write(configfile)

这是我得到的错误:

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Users\A52113242\AppData\Local\Downloaded Apps\Winpython\python-3.4.3\lib\tkinter\__init__.py", line 1533, in __call__
    return self.func(*args)
  File "C:\Users\A52113242\Desktop\PROJEKTE\[INPROGRESS] AUSWERTUNG COIN + HVL\_tool\tool.py", line 179, in coin_daten_erstellen
    with open(inifile,'w') as configfile:
TypeError: an integer is required (got type str)

我做错了什么?我不理解TypeError为什么需要一个整数。 另外这里是ini文件结构:

[date]
date_coin = 10.07.2017
date_hvl = 10.07.2017

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

该消息表明它正在读取目录中的“+”,就像添加一样,而不是目录的一部分。

也许您会在没有更改代码的情况下重试但是使用没有SPACE且没有“+”的路径?

例如: R “C:\用户\ A52113242 \桌面\ PROJEKTE \ INPROGRESS_AUSWERTUNG_COIN_HVL_tool \ CFG \ cfg.ini”