Python 如何根据parentiss函数更改变量名称? if strengh1
您的代码显示了对Python名称工作方式的深刻误解。仅仅设置Python 如何根据parentiss函数更改变量名称? if strengh1,python,function,printing,Python,Function,Printing,您的代码显示了对Python名称工作方式的深刻误解。仅仅设置character=1并写入death character将无法访问death 1,这根本没有任何意义。关于Python如何处理名称,有一本很好的入门书 您的具体问题可以通过将实际需要的所有变量传递到output来解决: if strengh1 <=0: death1=True else: death1 = False if strengh2 <=0: death2=True else: d
character=1
并写入death character
将无法访问death 1
,这根本没有任何意义。关于Python如何处理名称,有一本很好的入门书
您的具体问题可以通过将实际需要的所有变量传递到output
来解决:
if strengh1 <=0:
death1=True
else:
death1 = False
if strengh2 <=0:
death2=True
else:
death2=False
def output(character):
if death character == False:
print
print('Character', character ,' strengh is now %s' % strengh1)
print('Character ', character ,' skill is now %s' % skill1)
else:
print
print('Character ', character ,' is dead')
output(1)
output(2)
这显然有点尴尬,因此下一步将是将这些参数封装为
字符
类中的属性;见例。然后可以将单个字符
实例传递给函数。通常,最自然的解决方案是使用字典
def output(character, strength, skill, death):
if not death:
print
print('Character', character ,' strength is now %s' % strength)
print('Character ', character ,' skill is now %s' % skill)
else:
print
print('Character ', character ,' is dead')
output(1, strength1, skill1, death1)
death=dict()
#最有可能的是,力量也应该是一句格言
如果强度1
death = dict()
# most probably strength should be a dict too
if strengh1 <=0:
death[1]=True
else:
death[1] = False
# or death[1] = bool(strength1<=0)
if strengh2 <=0:
death[2]=True
else:
death[2]=False
def output(key):
if death[key]== False:
print
print('Character', character ,' strengh is now %s' % strengh1)
print('Character ', character ,' skill is now %s' % skill1)
else:
print
print('Character ', character ,' is dead')
output(1)
output(2)