我试图在python django中编辑另一个文件中的列表。我有一个名为www.example.com的文件和一个名为www.example.com的文件。 models.py and a file called details.py ,
details.py:
DATA = [
{'height': '184', 'width': '49'},
{'height': '161', 'width': '31'},
{'height': '197', 'width': '25'},
{'height': '123', 'width': '56'},
{'height': '152', 'width': '24'},
{'height': '177', 'width': '27'},
]
def edit_list(h,w):
for info in DATA:
if info['height'] == h:
info['width'] = w
return True
models.py:
from abc.details import edit_list
height = '161'
new_width = '52'
update_data = edit_list(height, new_width) #this doesn't work, when I check the file nothing changes in the list :/
实现这一目标的最佳方法是什么?
(我不想把这个列表导入到DB中,只是更新那里的宽度,我想在文件本身内部更新宽度,删除www.example.com文件并在每次编辑时使用python创建一个新的文件是不可能的,因为几乎没有其他函数也一直从列表中获取数据。details.py file and creating a new one using python whenever an edit takes place is not possible because few other functions are taking data from the list as well all the time.
1条答案
按热度按时间rkttyhzu1#
你需要缩进你的语句info['width'] = w,否则你将得不到你期望的结果。更重要的是,你需要取消缩进return语句。此时,你在执行完for语句的第一行后从函数返回。其余的行永远不会被执行。