下面的代码可以运行,但当用户试图键入时,它总是会导致错误UnboundLocalError: local variable 'value' referenced before assignment
。我去过很多网站,但似乎无法将我得到的解决方案应用到我的具体情况:
def letterbreak(luv):
setluv=list(str(luv))
for x in setluv:
if x=='a':
value=int(1)
if x=='b':
value=int(2)
if x=='c':
value=int(3)
if x=='d':
value=int(4)
if x=='e':
value=int(5)
if x=='f':
value=int(6)
.......
.......
.......
.......
if x=='y':
value=int(25)
if x=='z':
value=int(26)
print(str(value))
return
letterbreak(input())
如果条件有问题,请告诉我。在
顺便说一句(注释太长),您的代码可以简化很多。例如,可以使用查找表,如:
如果没有条件执行,则不定义
value
。那么,如果x == '1'
,必须打印什么值?在解决方案是在
if
之前定义一个默认值:相关问题 更多 >
编程相关推荐