如何修改python模块内容?

如何修改python模块内容?,python,configparser,Python,Configparser,我有一个名为config.py的文件,内容如下: logindata = [ {'user': '18320967034', 'password': '123456'} ] 我想修改登录数据并写回 import config config.logindata[0]['password'] = 'xxxx' 如何将其写回config.py 请不要告诉我要使用.ini/configparser如果您完全下定决心要这样做,您可能需要一起解决这个问题。您可以执行以下操作 import json

我有一个名为
config.py
的文件,内容如下:

logindata = [
  {'user': '18320967034', 'password': '123456'}
]
我想修改登录数据并写回

import config
config.logindata[0]['password'] = 'xxxx'
如何将其写回
config.py


请不要告诉我要使用
.ini/configparser

如果您完全下定决心要这样做,您可能需要一起解决这个问题。您可以执行以下操作

import json
import config

with open("config.py", "w") as config:
    config.logindata[0]['password'] = 'xxxx'
    code = "logindata = " + json.dumps(config.logindata)
    config.write(code)

我只想说,这样做真的很烦人,而且不是一个好的方式。但是如果不使用适当的保存和加载协议,我不知道还有什么其他方法可以做到这一点。

除非您不考虑安全性。你可以走这条路

import config
config.logindata[0]['password'] = 'xxxx'
#print(config.logindata)
config_string = "".join(('logindata = [',str(config.logindata[0]),"]"))
file = open("config.py", 'w')
file.write(config_string)
file.close()

(a) 这样写不是持久的,(b)永远不要保存未保存的密码…@WillemVanOnsem如果这是web服务使用的API的登录信息,那么您需要保存未保存的密码。您可以更改配置的存储方式吗?如果您想更改配置,使用
pickle
保存并加载配置会更有意义。@NickChapman:是的,但加密配置还是有意义的。@WillemVanOnsem这没关系。您将在同一台机器上存储加密密钥和解密过程。当有人入侵了你的计算机,并且可以正常读取密码时,他们也可以读取你为解密加密密码而编写的指令。