Vante901 2022-03-27 07:26 采纳率: 55.6%
浏览 18
已结题

如何创建一个循环,每轮将投掷5个骰子,直到所有5个骰子的数字一样?(语言-python)




```###### 
创建一个循环,每轮将投掷5个骰子,直到所有5个骰子的数字一样。 
创建一个名为played_rounds的变量。 
在每个循环中,首先创建一个名为round的空列表,并将played_rounds计数器变量增加一。 
连续调用throw_dice( )函数5次,并将5次投掷的结果逐个保存到列表中。 
掷骰子5次后,检查列表上的5个数字是否一样。 
如果数字都不一样,则再次启动循环。 
如果所有数字都一样,使用show_roll()函数来打印5个获胜的骰子。
打印出需要多少轮才能得到所有五个骰子一样。

```python
#Import libraries
from PIL import Image
import requests
from io import BytesIO
import random
```python
#Dice side image URLs
roll1_url = r"https://cdn-icons-png.flaticon.com/128/7011/7011091.png"
roll2_url = r"https://cdn-icons-png.flaticon.com/128/7011/7011093.png"
roll3_url = r"https://cdn-icons-png.flaticon.com/128/7011/7011095.png"
roll4_url = r"https://cdn-icons-png.flaticon.com/128/7011/7011097.png"
roll5_url = r"https://cdn-icons-png.flaticon.com/128/7011/7011099.png"
roll6_url = r"https://cdn-icons-png.flaticon.com/128/7011/7011104.png"

#Get images from URLs
roll1 = requests.get(roll1_url)
roll2 = requests.get(roll2_url)
roll3 = requests.get(roll3_url)
roll4 = requests.get(roll4_url)
roll5 = requests.get(roll5_url)
roll6 = requests.get(roll6_url)


num = random.randint(1,6)
roll_images=[roll1,roll2,roll3,roll4,roll5,roll6]

show_roll = roll_images[num-1] 
img = Image.open(BytesIO(show_roll.content)) 
img.thumbnail([50,50]) 
display(img)

展开全部

  • 写回答

2条回答 默认 最新

  • chuifengde 2022-03-27 07:49
    关注

    def throw_dice():
    num = random.randint(1,6)
    return num
    def show_roll(num):
    show = roll_images[num-1]
    img = Image.open(BytesIO(show.content))
    img.thumbnail([50,50])
    display(img)
    played_rounds=0
    while True:
    round = []
    for _ in range(5):
    round.append(throw_dice())
    played_rounds+=1
    if len(set(round))==1:
    break
    show_roll(list(set(round))[0])
    print(played_rounds)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月3日
  • 已采纳回答 3月27日
  • 创建了问题 3月27日

悬赏问题

  • ¥15 java和硬件交互问题
  • ¥15 前台多人编辑时怎么让每个人保存刷新都互不干扰
  • ¥20 如何用Python删除单元格内连续出现的重复词?
  • ¥15 WangEditor嵌入到geeker-admin中,回车没有办法换行
  • ¥30 stm32f103c8t6制作万能红外遥控器
  • ¥15 有人会fastcrud写前端页面吗
  • ¥15 如何解除Uniaccess管控
  • ¥15 微信小程序跳转关联公众号
  • ¥15 Java AES 算法 加密采用24位向量报错如何处理?
  • ¥15 使用X11可以找到托盘句柄,监控到窗口点击事件但是如何在监听的同时获取托盘中应用的上下文菜单句柄