如何通过python中的文本文件创建类?

时间:2019-02-06 10:18:38

标签: python class dictionary

我如何从包含以下数据的Text_file.txt创建一个类。因此,A-I是我的对象。

Text_file.txt格式:

[{'A': 443582874, 'B': '015490199481', 'C': 98874007784, 'D': 'Banana', 'E': 'buy', 'F': '0.2000', 'G': '0.031076', 'H': '-0.000000621520', 'I': '2019-02-01T11:19:22.740Z'}, {'A': 443484705, 'B': '015490131470', 'C': 98848326070, 'D': 'Apple', 'E': 'sell', 'F': '0.2000', 'G': '0.030879', 'H': '-0.000000617580', 'I': '2019-02-01T09:35:09.198Z'}]

这样的话:

print(class['D0']):

返回:

Banana

print(class['D0':'D1'])

返回:

Banana
Apples

2 个答案:

答案 0 :(得分:0)

这不是真的,但是有一种解决方法。

如果文件不是text_file.txt,而是文件text_file.py,内容是这样的:

var = [{'A': 443582874, 'B': '015490199481', 'C': 98874007784, 'D': 'Banana', 'E': 'buy', 'F': '0.2000', 'G': '0.031076', 'H': '-0.000000621520', 'I': '2019-02-01T11:19:22.740Z'}, {'A': 443484705, 'B': '015490131470', 'C': 98848326070, 'D': 'Apple', 'E': 'sell', 'F': '0.2000', 'G': '0.030879', 'H': '-0.000000617580', 'I': '2019-02-01T09:35:09.198Z'}]

然后在您的脚本中拥有

from text_file import var

print(var[0]['D'])

那会给你'Banana'

您需要将text_file.py与python脚本放在同一文件夹中(或至少在路径中的某个位置),以便可以将其导入。

有时我会针对配置执行此操作。您还误用了class这个名字。


编辑:

这样做:

print(class['D0':'D1'])

可能是可能的,但是我根本不想要它-为此,您基本上将为不同的数据结构重建自己的索引符号-为什么不仅仅学习python已经拥有的索引呢? / p>

类似这样的东西:

print([i['D'] for i in var[0:1]])

会给你你想要的东西

答案 1 :(得分:0)

class是Python保留的单词,具有特殊含义,我认为这不是您的意思。

您似乎拥有的是一个JSON字符串,可以将其作为2元素的字典列表导入到Python中。除了使用单引号而不是双引号。因此,将文件读入string,然后

import json

string = string.replace( "'", '"')
j = json.loads( string)

您现在可以参考j[0]['D'][ x['D'] for x in j ](后者是列表['Banana', 'Apple']