我需要一些帮助,我坚持这个功能。
我需要做三个过程,一个是根据输入的奇数或偶数运行来切换每个玩家,但是,我无法弄清楚如何替换和填充与batsmanName
占位符相关的batsmanBatting
占位符{1}}列表,如果获取了一个检票口,它将更改为batsmanName
列表中的下一个元素(如果采用检票口则由用户添加)。
最后一个过程是将batsmanRun
相关索引中的分数添加到击球击球中,也就是说,如果batsmanBatting[4]
为'T',那么batsmanRun[4]
应该累计。
我希望我已经清楚地解释了这一点并且有意义,如果不是我可以添加更多信息,任何帮助将非常感激。
def getRuns(totalScore):
global batsmanName #[] empty list a function adds a player if a wicket is taken
global batsmanRun #[0,0,0,0,0,0,0,0,0,0,0] #accumulators
global batsmanBatting #['F', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'F']
global batsmanOnField #['F', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'F']
global wickets
while(1):
try:
if(totalScore%2==0):
print(batsmanBatting)
runs=int(input("\nEnter runs for striker %s: " % batsmanName[0]))
batsmanRun[0]+=runs
print(batsmanRun)
else:
print(batsmanBatting)
runs=int(input("\nEnter runs for striker %s: " % batsmanName[1]))
batsmanRun[1]+=runs
print(batsmanRun)
if(runs<7):
return runs
else:
print("Invalid run(s) entered. Please try again.")
except Exception as err:
print(err)
print("Please try again.")
答案 0 :(得分:1)
要为batsmanName
列表添加名称,请执行
batsmanName.append('Mr Batsman')
如果它是真正的占位符,则不要使用列表,使用None
或空字符串。在这种情况下,您可以通过分配来更新它:
batsmanName = 'Mr Batsman'
对于你的第二个问题(你真的应该单独提出单独的问题),不清楚“如果batsmanBatting [4]是'T',那么batsmanRun [4]应该根据”意思累积,但我想这意味着:
for num, state in enumerate(batsmanBatting):
if state == 'T':
batsmanRun[num] += 1
可能有更好的方法。或者不,我不知道板球。