擅长:python、mysql、java
<p>另一种可能是使用dictionary(用户输入不可转换为int的值时无任何防御措施):</p>
<pre><code>import random
tries = input('How many coin tosses you like to simulate: ')
tosses = (random.choice(['head', 'tail']) for i in range(int(tries)))
results = {'heads': {'total': 0, 'best': 0, 'current': 0},
'tails': {'total': 0, 'best': 0, 'current': 0}
}
# alternative: {key: dict.fromkeys('total best current'.split(), 0) for key in ('heads', 'tails')}
for i, toss in enumerate(tosses, start=1):
print(f'Result {i}: {toss}')
results[toss]['total'] += 1
results[toss]['current'] += 1
results[(results.keys() - [toss]).pop()]['current'] = 0
results[toss]['best'] = max(results[toss]['best'], results[toss]['current'])
for k, v in results.items():
print(f'The total amount of {k} is {v["total"]}')
print(f'The best streak of {k} is {v["best"]}')
</code></pre>