在Python 3中,是否有更优雅的方法在两个字符串或整数之间切换?
x={"A":"B", "B":"A"}[x]
值可以是非布尔值,如字符串或整数。 让我们假设我们想要在" A"之间切换。和" B"变量名是x。
换句话说:如果x = "A"
,则结果应为x = "B"
,如果x = "B"
,则结果应为x = "A"
。
输入
x="B"
输出:
x="A"
答案 0 :(得分:1)
使用dict已经很聪明了。这是另一种选择:
x = 'B' if x == 'A' else 'A'
答案 1 :(得分:0)
你可以这样写:
def toggle(x):
x['A'], x['B'] = x['B'], x['A']
x = {'A': 'B', 'B': 'A'}
或那:
def toggle(x):
x.update(dict(zip(x.keys(), list(x.values())[::-1])))
x = {'A': 'B', 'B': 'A'}
print(x)
toggle(x)
print(x)
toggle(x)
print(x)
<强>输出强>:
{'A': 'B', 'B': 'A'}
{'A': 'A', 'B': 'B'}
{'A': 'B', 'B': 'A'}