Python向列表中添加项目?
当我将项目添加到列表时,Python向列表中添加项目?,python,list,python-3.3,Python,List,Python 3.3,当我将项目添加到列表时,list.append()或list.insert()或加载文件时的任何其他方法,我添加到列表中的项目不存在。此外,我想在另一个文件中的名单只是以防万一,它有任何不同 代码: 我知道如何从其他文件中获取信息 try: #load list from file if it (the file) exists my_list = json.load(open("my_database.dat")) except IOError: #otherwise create th
list.append()
或list.insert()
或加载文件时的任何其他方法,我添加到列表中的项目不存在。此外,我想在另一个文件中的名单只是以防万一,它有任何不同
代码:
我知道如何从其他文件中获取信息
try: #load list from file if it (the file) exists
my_list = json.load(open("my_database.dat"))
except IOError: #otherwise create the list
my_list = []
...
#save list for next time ..
json.dump(my_list,open("my_database.dat","wb"))
这是许多方法之一
你也可以用泡菜
try: #load list from file if it (the file) exists
my_list = pickle.load(open("my_database.dat"))
except IOError: #otherwise create the list
my_list = []
...
#save list for next time ..
pickle.dump(my_list,open("my_database.dat","wb"))
或者使用ast.literal\u eval执行此操作
try:
my_list = ast.literal_eval(open("some_file").read())
except IOError:
my_list = []
...
#save list
with open("some_file","wb") as f:
f.write(repr(my_list))
要在良好的开端中实现两次运行之间的简单数据持久性,请执行以下操作:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pickle
def main():
# Load the file if it exists other initialise the list
try:
replicating_cow = pickle.load(open("cows.p", "rb"))
except IOError:
replicating_cow = []
replicating_cow.append('cow') # Add another cow
print replicating_cow # Print the list
pickle.dump(replicating_cow, open("cows.p", "wb")) # Save the list to disk
if __name__ == "__main__":
main()
每次跑步后,我们都会得到一头新奶牛:
$ python replicate_cow.py
['cow']
$ python replicate_cow.py
['cow', 'cow']
$ python replicate_cow.py
['cow', 'cow', 'cow']
$ python replicate_cow.py
['cow', 'cow', 'cow', 'cow']
第一个要求:请不要将变量名大写;符合Python风格的指导原则。第二个要求:请重申你的问题,它没有什么意义。当您说“加载文件备份”时,您的意思是再次运行Python脚本吗?您现在使用什么代码从文件加载列表?您有没有在更改列表后保存该列表的代码?如果您想将python变量保存到磁盘,然后稍后再来处理它们,您可能需要学习pickle module.or json。。。或ast.literal\u eval。。。或者其他一百种方法…抱歉,我无意中按了enter,它说Pass=pickle.load(open(“Password.p”))TypeError:“str”不支持缓冲区接口
$ python replicate_cow.py
['cow']
$ python replicate_cow.py
['cow', 'cow']
$ python replicate_cow.py
['cow', 'cow', 'cow']
$ python replicate_cow.py
['cow', 'cow', 'cow', 'cow']