pythonlist的工作方式与list不同

pythonlist的工作方式与list不同,python,arrays,list,indexing,printing,Python,Arrays,List,Indexing,Printing,这是我的user.txt文件数据: [admin”,“123”,“2017-May-21 01:43:37”],[nimal”,“456”,“2017-Apr-10 21:24:48”],[kamal”,“8745”,“2017-Apr-15 21:25:46”] 它是2D列表。但当读取并获取这些数据时,我无法使用索引打印数组 输出: openFile = open('user.txt', 'r') data =[] data = openFile.read()) print((data[0])

这是我的user.txt文件数据:

[admin”,“123”,“2017-May-21 01:43:37”],[nimal”,“456”,“2017-Apr-10 21:24:48”],[kamal”,“8745”,“2017-Apr-15 21:25:46”]

它是2D列表。但当读取并获取这些数据时,我无法使用索引打印数组

输出:

openFile = open('user.txt', 'r')
data =[]
data = openFile.read())
print((data[0])
我需要这个输出:

[

在此,您可以将数据分配给空列表:

['admin', '123', '2017-May-21 01:43:37']
但随后将数据指定给文件的文本内容:

data =[]
。。。它不再是一个列表。似乎您希望
数据
以某种方式神奇地记住它以前是一个列表,并根据该类型解释其新内容,但它没有这样做

user.txt
的内容看起来像一个2D列表,但它只是文本。但是,由于文本看起来完全像一个2D列表,因此您可以使用
json
模块执行您想要的操作:

data = openFile.read())
您的数据是一个编码字符串。您可以将其解码为python列表,如下所示:

import json
openFile = open('user.txt', 'r')
data = json.load(openFile)
print (data[0])
或者,您可以直接从文件中读取:

import json

strg = '''[["admin", "123", "2017-May-21 01:43:37"], ["nimal", "456", "2017-Apr-10 21:24:48"], ["kamal", "8745", "2017-Apr-15 21:25:46"]]'''

data = json.loads(strg)

print(data[0])
# ['admin', '123', '2017-May-21 01:43:37']

打印(数据)
怎么样。代码中还有括号不匹配的情况
data
表示整个字符串,
data[0]
表示第一个字符,在您的情况下,当您从文件中读取时,第一个字符是
[
,那么这将是一个字符串。因此,如果打印第0个索引,那么它将是“[”,我只需要此输出:[“admin”,“123”,“2017-May-21 01:43:37']
with open('user.txt', 'r') as file:
    data = json.load(file)
print(data[0])