的Python:在Python
串联可变我有3个variable
的Python:在Python
print(obj.col1_expense.text) #test1 print(obj.col2_expense.text) #test2
print(obj.col3_expense.text) #test3
如何打印它的动态? 我现在想这样
for x in range(1, 4): print("obj.col"+str(x)+"_expense".text)
但它给错误。
AttributeError: 'str' object has no attribute 'text'
回答:
你可以使用[Python]: getattr(object, name[, default]):
for x in range(1, 4): print(getattr(obj, "col{}_expense".format(x)).text)
,或者确保如果搞乱了索引,你不会得到AttributeError
,你可以更换print
对此(不容易阅读)形式:
print(getattr(getattr(obj, "col{}_expense".format(x), None), "text", None))
回答:
试试这个:
for x in range(1, 4): var = "obj.col"+str(x)+"_expense.text"
print(var)
回答:
我希望这将帮助你:
for x in range(1,4): col_text = 'col' + str(x) + '_expense'
print(getattr(obj,col_text).text)
回答:
我不知道,但如果你想创建的变量和相应的值。这将取决于你想使用变量的地方。
import pandas as pd var = []
for x in range(1, 4):
var.append("obj.col%s_expense.text" %(x))
print(var)
print(var[0])
print(var[1])
以上是 的Python:在Python 的全部内容, 来源链接: utcz.com/qa/264929.html