python中for循环的问题

python中for循环的问题,python,loops,conditional-statements,Python,Loops,Conditional Statements,在石头、纸、剪刀的代码中,我有两个变量:choose用于存储用户对石头、纸、剪刀的选择,pc\u move用于随机选择其中一个,并将其存储为r、p和s。 例如,如果用户选择摇滚 choose = 'r' 我希望将其作为单独的行打印,如下所示: print(f'{name} chooses {choose}') 所以我使用这个嵌套循环来实现这个目的: for tag in [choose,pc_move]: if tag == 'r': tag = 'r

在石头、纸、剪刀的代码中,我有两个变量:
choose
用于存储用户对石头、纸、剪刀的选择,
pc\u move
用于随机选择其中一个,并将其存储为r、p和s。
例如,如果用户选择摇滚

choose = 'r'
我希望将其作为单独的行打印,如下所示:

print(f'{name} chooses {choose}')
所以我使用这个嵌套循环来实现这个目的:

for tag in [choose,pc_move]:
        if tag == 'r':
            tag = 'rock'
        elif tag == 's':
            tag = 'scissor'
        elif tag == 'p':
            tag = 'paper'
如果
choose
is rock,它将存储为'r',我希望它更改为'rock'。这同样适用于
pc\u move
。但我看不到输出的变化。
我犯了什么错误?我对python了解不多,我是个新手。感谢您的帮助。

您不需要循环;您只需分别调用两个
print
,以及一个将标记映射到移动的
dict

d = {'r': 'rock', 's': 'scissor', 'p': 'paper'}

print(f'Computer chooses {d[pc_move]}')
print(f'{name} chooses {d[choose]}')

choose
是一个动词。动词是好方法。名词是很好的对象,因此
choice
可能是更好的变量名
tag
只是一个名称。它不“知道”它的赋值来自
choose
pc_move
,尤其不知道它应该在重新赋值时更新这两个值。@MisterMiyagi如果
choose
pc_move
没有得到更新,那么使用for循环是不可能的吗?我只是想知道为了使用for循环,不可能使用for循环。名称不是,for循环不能对它们进行操作(它会立即对它们的值进行操作)。这是一种很好的提问方式!但是你能指出我写的代码中的错误吗?难道我不可能吗?你没有表现出足够的能力去做任何事情。您重置了
标记
,但for循环中没有
print
语句来使用新标记。