我正在用python开发一个基于文本的游戏,想检查我所在的字段中有多少棵树。
我正在运行最新的Python(3.7.1)(不使用IDLE,它只是命名为Python3.7.1.exe,看起来像CMD) 我正在尝试使用像这样的变量,但这是说我无法将字符串与整数进行比较(但是如何将字符串转换为“可变文本”?)。
trees_A1 = random.randint(…)
trees_A2 = random.randint(…)
…
Field = A3
if "trees_"+Field > 0
我希望它可以比较trees_A3,但是只看到字符串trees_A3。
答案 0 :(得分:0)
使用dictionary!
print(df.loc['2013-01-02':'2013-01-04','A':'C'])
A B C
2013-01-02 0.719469 0.423106 0.980764
2013-01-03 0.480932 0.392118 0.343178
2013-01-04 0.438572 0.059678 0.398044
答案 1 :(得分:0)
您可以使用globals()
:
if globals()["trees_"+Field] > 0:
或使用字典。
答案 2 :(得分:0)
您正在寻找eval()
运算符
a = 5
eval("a")
这将导致
5
因此您可以使用eval()
评估字符串。但是,您不应该这样做。由于eval就像一个邪恶的运算符。它们会在您的程序中引起安全问题。您应该为自己的目的使用字典。
trees = {}
trees["A1"] = random.randint(…)
那么您应该以这种方式调用trees["A1"]
,这样您将编写更多的pythonic和更合适的代码。