如何在 .txt 文档中使用数组来创建对象
How to use an array within a .txt document to create an object
我有一个包含 10 个数组的文本文件,每行 1 个。
该代码应该采用这些数组之一,并使用每个元素从 class.
创建一个对象
代码如下:
class character(metaclass=ABCMeta):
def __init__(self, name, lvl, hp,):
self._name = name
self._lvl = lvl
self._hp = hp
def stats(self):
print("Name:", self._name)
print("Level:", self._lvl)
print("HP:", self._hp)
def venture():
with open("Zone1.txt") as text:
entries = text.readlines()
search =(random.choice((entries))
monster = character(search[0], search[1], search[2])
"Zone1.txt" 中的数组如下所示:
["鱼", 5, 14]
它不是拉取元素 1、2 和 3,而是拉取行中的第 1、2 和 3 个字符。
感谢任何帮助,我会尽力回答向我提出的任何问题。
我也不确定如何正确描述我的问题,因此找不到现有的问题,如果被骗了,我们深表歉意。
由于您是从文本文件中读取的,因此文件的每一行都是一个字符串而不是一个列表。
您可以使用名为 json
:
的包将此字符串转换为列表
import json
search =json.loads(random.choice(entries))
我有一个包含 10 个数组的文本文件,每行 1 个。 该代码应该采用这些数组之一,并使用每个元素从 class.
创建一个对象代码如下:
class character(metaclass=ABCMeta):
def __init__(self, name, lvl, hp,):
self._name = name
self._lvl = lvl
self._hp = hp
def stats(self):
print("Name:", self._name)
print("Level:", self._lvl)
print("HP:", self._hp)
def venture():
with open("Zone1.txt") as text:
entries = text.readlines()
search =(random.choice((entries))
monster = character(search[0], search[1], search[2])
"Zone1.txt" 中的数组如下所示:
["鱼", 5, 14]
它不是拉取元素 1、2 和 3,而是拉取行中的第 1、2 和 3 个字符。
感谢任何帮助,我会尽力回答向我提出的任何问题。 我也不确定如何正确描述我的问题,因此找不到现有的问题,如果被骗了,我们深表歉意。
由于您是从文本文件中读取的,因此文件的每一行都是一个字符串而不是一个列表。
您可以使用名为 json
:
import json
search =json.loads(random.choice(entries))