回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在做《刽子手》,为了这个问题简化了我的代码</p>
<p>从本质上说,我试图在用户输入的字典中随机选择一个对象,无论用户选择哪个选项。例如,如果用户将a作为categ,并首先作为opt,randomOpt将被设置为a、b或c</p>
<pre><code>categ = input('hello OR hi: ')
opt = input('FIRST, SECOND, OR LAST: ')
hello = {'FIRST':['a','b','c'],'SECOND':['z','x','y'],'LAST':['t','u','v']}
hi = {'FIRST':[1, 2, 3], 'SECOND':[20, 19, 18], 'LAST': [10, 11, 12]}
import random
randomOpt = random.choice(categ[opt])
print(randomOpt)
</code></pre>
<p>每当我运行此命令时,Python都会返回“string index must be integers”
我的朋友建议我做</p>
<pre><code>categ = input('hello OR hi: ')
opt = input('FIRST, SECOND, OR LAST: ')
hello = {'FIRST':['a','b','c'],'SECOND':['z','x','y'],'LAST':['t','u','v']}
hi = {'FIRST':[1, 2, 3], 'SECOND':[20, 19, 18], 'LAST': [10, 11, 12]}
import random
if categ == 'hello':
randomOpt = random.choice(hello[opt])
elif categ == 'hi':
randomOpt = random.choice(hi[opt])
print(randomOpt)
</code></pre>
<p>但我想这样做感觉没有那么“活力”
有人能帮我找出为什么这个代码不起作用,以及我如何编辑来修复它吗</p>