2024-04-25 03:57:13 发布
网友
我试图解决一个问题,在这个问题上,给一个变量赋值是很方便的,它本身就是两个字符串的串联。显然,我得到了一个错误:
SyntaxError: can\'t assign to operator
我正在努力使其工作的部分代码:
char1 = 'a' char2 = 'b' char1+char2 = [element1,element2]
我试图给一个名为ab的新变量分配一个列表。我为我的天真道歉。有什么建议吗?你知道吗
看起来你只是在第三个变量上翻转了逻辑。构建变量列表,然后指定一个新变量来连接该列表。 像这样:
char1 = ('a') char2 = ('b') char3 = char1 + char2 print char3
我能想到一个办法:
>>> c1 = 'a' >>> c2 = 'b' >>> vars = {} >>> vars[c1+c2] = [1,2,3,4] >>> print vars['ab'] [1, 2, 3, 4]
可以按你的要求做,但不建议这样做。相反,使用字典来保存您动态创建的变量名称:
mydict = {} char1 = 'a' char2 = 'b' mydict[char1+char2] = [1, 2] print(mydict)
这将导致:
{'ab': [1, 2]}
如您所见,字典现在有一个键ab,并为您赋值。要访问此变量时,请使用mydict['ab']。你知道吗
ab
mydict['ab']
还可以使用动态创建的名称将属性分配给类实例。例如:
class A(object): pass a = A() setattr(a, char1+char2, [3, 4]) print(a.ab)
这将打印:
[3, 4]
属性也可以通过动态构造的名称访问:
print(getattr(a, char1+char2))
打印内容:
看起来你只是在第三个变量上翻转了逻辑。构建变量列表,然后指定一个新变量来连接该列表。 像这样:
我能想到一个办法:
可以按你的要求做,但不建议这样做。相反,使用字典来保存您动态创建的变量名称:
这将导致:
如您所见,字典现在有一个键
ab
,并为您赋值。要访问此变量时,请使用mydict['ab']
。你知道吗另一种方法
还可以使用动态创建的名称将属性分配给类实例。例如:
这将打印:
属性也可以通过动态构造的名称访问:
打印内容:
相关问题 更多 >
编程相关推荐