Python-从文件中检索信息-结构问题

Python-从文件中检索信息-结构问题,python,file,multidimensional-array,Python,File,Multidimensional Array,我有一个问题:python有没有办法从文件中检索python结构,而不是以字符串的形式检索所有内容 让我详细解释一下: 我的类中有三个函数/方法。我刚刚复制并粘贴了我想要分析的代码片段 一种方法用于删除,一种方法用于打开文件,另一种方法用于写入文件,如下所示: def download_data(self,lista_contactos): with open(global_properties.file_contact, 'a', newline='') as fw:

我有一个问题:python有没有办法从文件中检索python结构,而不是以字符串的形式检索所有内容

让我详细解释一下:

我的类中有三个函数/方法。我刚刚复制并粘贴了我想要分析的代码片段

一种方法用于删除,一种方法用于打开文件,另一种方法用于写入文件,如下所示:

def download_data(self,lista_contactos):
    with open(global_properties.file_contact, 'a', newline='') as fw:
        writter = csv.writer(fw,delimiter=',')
        writter.writerow([lista_contactos])

def Open_File(self):
    with open(global_properties.file_contact) as fr:
        read = csv.reader(fr)
        lista_contacto = []
        for each_row in read:
            lista_contacto += each_row
        print("El archivo es {}".format(lista_contacto))
        return lista_contacto

def delete_file(self):
    a_borrar = []
    a_borrar = self.Open_File()
    print("SELECT THE NAME TO BE DELETED")
    a_modif = str(input(''))
    value = ''
    new_value = ''
    for i in a_borrar:
        print(type(a_borrar))
        print(type(i))
        print(i)
当文件被写入时,它被保存为列表中的字典,这是有意义的,因为我想将我的联系人保存在一个文件中,以便检索他们的信息。也许我只想从整个列表中检索姓名或电子邮件,因此我将数据保存为字典

“[{'nombre':'Emiliano','apellido':'Gramajo','telefono':'00000000','email':'emilramajo@il.com“,'tipo de contacto':'P'}]” “[{'nombre':'Elizabeth','apellido':'Istillarrrte','telefono':'0000000','email':'Elizabeth。arte@gl.com“,‘联系方式’:‘个人’}” “[{'nombre':'Karen','apellido':'Noguera','telefono':'11111111','email':'kals@gl.com“,'tipo de contacto':'P'}]”

但是当我检索信息时,所有信息都作为str检索(我知道,因为我打印了它们的类型)。那么我的方法是什么?要将所有信息保存为一个没有键的列表,或者有没有办法说Python我正在尝试从一个文件中检索一个字典来处理列表中的这个字典

注意:如果你问我,我更喜欢第二个,因为要么我必须将所有内容作为字符串处理并开始拆分每个键值,将它们保存到列表中并获取信息,要么将它们保存为无键的普通测试,这将使我更难理解或找到需要打印或检索的数据


我的方法都没有帮助我检索要删除或修改的信息

不要试图通过将信息转换为这样的str来将信息保存到文件中。使用一种设计用于轻松往返保存和加载JSON、JSONLines、pickle等的格式。它们都有不同的优点和缺点,但它们都比只写出
str(mylistofdicts)
然后在读回时试图弄清楚如何处理好。(如果您试图保存的只是一个字符串的dict列表,那么JSON就是最好的选择。)您是对的。我并没有在Json文件中思考。