python模拟掷骰子,满足以下条件

骰子是具有代表性的中国传统民间娱乐工具,最常见的骰子是正方体六面骰,六面的点数分别从1~6,且相对面点数之和为7。现有A,B两人通过掷骰子比较谁的点数更大,请通过python程序模拟以下过程: (1) 一盘游戏中,A,B两人轮流掷骰子5次,并将每次掷出的点数累加,5盘之后,累计点数较大者获胜,点数相同则为平局。请输出A,B两人最终点数之和及最后的获胜者。 (2)A,B将(1)中的掷骰子游戏共进行了50轮,游戏结束后,A,B想得知自己输赢的次数,请输出A,B两人各自赢得的场数。

1.

import random

A = []
B = []
for i in range(5):
    a = random.randint(1,6)
    b = random.randint(1, 6)
    A.append(a)
    B.append(b)
sumA = sum(A)
sumB = sum(B)
print('A获取的点数:%s\n'
      'A最终点数:%d\n'
      'B获取的点数:%s\n'
      'B最终点数:%d'%(A, sumA, B, sumB))
if sumA > sumB:
    print('A获胜一次')
elif sumA < sumB:
    print('B获胜一次')
elif sumA == sumB:
    print('平局')

2

import random

win_a = 0
win_b = 0
for j in range(50):
    A = []
    B = []

    for i in range(5):
        a = random.randint(1,6)
        b = random.randint(1, 6)
        A.append(a)
        B.append(b)
    sumA = sum(A)
    sumB = sum(B)
    print('A获取的点数:%s\n'
          'A最终点数:%d\n'
          'B获取的点数:%s\n'
          'B最终点数:%d'%(A, sumA, B, sumB))
    if sumA > sumB:
        print('A获胜一次')
        win_a += 1
    elif sumA < sumB:
        print('B获胜一次')
        win_b += 1
    elif sumA == sumB:
        print('平局')
print('A一共赢%d次\n'
      'B一共赢%d次\n'
      '平局赢%d次'%(win_a,win_b,50-win_a-win_b))

第(1)问:

import numpy as np
A = 0; B = 0
for i in range(5):
  A += np.random.randint(1, 7)
  B += np.random.randint(1, 7)
print('A点数之和:', A)
print('B点数之和:', B)
if A>B:
  print('获胜者是A!')
elif A == B:
  print('平局')
else:
  print('获胜者是B!')

#第(2)问:

import numpy as np
A = 0; B = 0; win_a = 0; win_b = 0
for i in range(50):
  a = np.random.randint(1, 7)
  b = np.random.randint(1, 7)
  A += a
  B += b
  if a > b: 
    win_a += 1
  if b > a:
    win_b +=1
print('A一共赢%d次'%win_a)
print('B一共赢%d次'%win_b)
print('平局%d次'%(50 - win_a - win_b))