Python 类字符串和打印函数

Python 类字符串和打印函数,python,string,class,printing,Python,String,Class,Printing,我正在开发一款基于文本的游戏,目前为止我已经完成了: class Map(): room1 = ('sampletext') print(Map(room1)) 但是我得到了一个错误: Traceback (most recent call last): File "C:/Users/Owner/Downloads/Text.py", line 3, in <module> print(Map(room1)) NameError: name 'room1' i

我正在开发一款基于文本的游戏,目前为止我已经完成了:

class Map():
    room1 = ('sampletext')

print(Map(room1))
但是我得到了一个错误:

Traceback (most recent call last):
  File "C:/Users/Owner/Downloads/Text.py", line 3, in <module>
    print(Map(room1))
NameError: name 'room1' is not defined
回溯(最近一次呼叫最后一次):
文件“C:/Users/Owner/Downloads/Text.py”,第3行,在
打印(地图(房间1))
NameError:未定义名称“room1”
我不明白为什么变量中的字符串没有被打印出来,因为我正在调用这个类,但是它说变量在代码中没有被识别为变量。我希望得到反馈,以便完成此游戏。

尝试以下方法:

class Map():
    room1 = ('sampletext')

print(Map.room1)
输出:

sampletext

主要的问题是你不能调用一个类。您可以调用类方法,也可以对类的实例调用方法。语法

Map(room1)
给定初始化参数
room1
,尝试创建
Map
的实例(对象),该参数应为局部变量

根据您给出的类定义,我认为正确的语法是

print(Map.room1)

它引用了class属性
room1

的值,为什么在
'sampletext'
周围有
()
?如果您试图用一个元素创建元组,则需要一个逗号:
('sampletext',)
。。。这段时间又让我抓狂了