首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用随机选择颜色

如何使用随机选择颜色
EN

Stack Overflow用户
提问于 2019-06-15 02:22:51
回答 2查看 3.2K关注 0票数 23

我试着做一个小程序来学习更多的东西,但是当涉及到使用随机的时候,我被困住了。

下面是我要离开https://trinket.io/Python/3338c95430的一个例子

我试着用random.randrange,random.choice,random.random为它们提供一切,它发送一个错误代码,说随机没有随机范围、选择或随机的函数。

代码语言:javascript
复制
import turtle, math, random, time

wn = turtle.Screen()
wn.bgcolor('grey')
Rocket = turtle.Turtle()
Rocket.speed(0)
Rocket.color('red') ## this is what i want to randomize
rotate=int(90)

def drawCircles(t,size):
    for i in range(15):
        t.circle(size)
        size=size-10
def drawSpecial(t,size,repeat):
    for i in range(repeat):
        drawCircles(t,size)
        t.right(360/repeat)
drawSpecial(Rocket,100,10)

最后,我想实现更多的随机过程,比如大小和位置,但现在我只关注颜色。

EN

回答 2

Stack Overflow用户

发布于 2019-06-15 02:34:52

在256个范围内生成随机颜色(假设RGB)的一种方法是使用np.random.choice

代码语言:javascript
复制
import numpy as np

color = tuple(np.random.choice(range(256), size=3))
print(color)

根据jpmc26 26的注释,另一个不需要Numpy的方法是使用random.choices 3.6+。这可能是一个更好的选择,因为导入Numpy只是为了创建3个随机整数是过头了。

代码语言:javascript
复制
import random

color = tuple(random.choices(range(256), k=3))
print(color)

示例随机RGB输出

(248、88、28) (165、248、150) (188、29、135)

票数 4
EN

Stack Overflow用户

发布于 2019-06-15 02:38:59

random.choice从序列中返回一个随机元素,只需传递一个列表,其中包含要从中选择的值:

代码语言:javascript
复制
rand_color = random.choice(['blue', 'red'])
Rocket.color(rand_color)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56606884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档