我同意@TigerhawkT3(+1)你教授对pick_color()的实现是垃圾。但我不认为random.choice(),或者你教授滥用random.shuffle()的方式是最好的选择。两者的问题是,在连续调用时可以获得相同的颜色,这是在正方形内绘制正方形时不需要的:>>> import random

>>> COLORS = ['red', 'blue', 'green', 'yellow', 'black', 'pink', 'gold', 'violet', 'orange', 'magenta', 'cyan']

>>> for _ in range(10):

... print(random.choice(COLORS))

...

green

pink

red

black

violet

orange

orange

violet

yellow

yellow

>>>

我仍然会使用random.shuffle(),尽管不是像你的教授那样,通过跟踪返回的颜色来确保前一次洗牌的最后一种颜色不是新洗牌的第一种颜色:import turtle

import random

COLORS = ["blue", "black", "brown", "red", "yellow", "green", "orange", "beige", "turquoise", "pink"]

def pick_color(colors=[], previous=[None]): # intentionally dangerous default values

if not colors:

colors.extend(COLORS)

random.shuffle(colors)

if colors[-1] == previous[0]:

colors.insert(0, colors.pop())

previous[0] = colors.pop()

return previous[0]

squares = input("How many squares should I draw (whole numbers): ")

squares_int = int(squares)

length = 400

x = -200

y = 200

turtle.pensize(5)

for i in range(squares_int):

random_color = pick_color()

turtle.fillcolor(random_color)

turtle.penup()

turtle.goto(x, y)

turtle.pendown()

turtle.begin_fill()

for _ in range(4):

turtle.forward(length)

turtle.right(90)

turtle.end_fill()

length -= 30

x, y = x + 15, y - 15

turtle.done()

我相信这比你用相同颜色的相邻方块显示的效果要好:

python背景颜色怎么随机_Python中的随机颜色相关推荐

  1. EasyExcel 单元格背景颜色、字体颜色使用2种设置颜色方法(IndexedColors中定义的颜色,自定义RGB颜色)实现

    1 Maven配置 <!--hutool工具包--><dependency><groupId>cn.hutool</groupId><artifa ...

  2. python画图颜色代码_python中matplotlib的颜色及线条控制的示例

    下次用python画图的时候选色选点都可以直接参考这边,牛逼!分享给大家,也给自己留个笔记. 参考网址: http://stackoverflow.com/questions/22408237/nam ...

  3. python基本随机数生成函数有_Python中生成随机数的常用方法

    注意:random模块中的方法是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用方法. random.random() random()方法返回随机生成的一个实数(浮 ...

  4. python常用函数的用法_python中常用函数整理

    1.map map是python内置的高阶函数,它接收一个函数和一个列表,函数依次作用在列表的每个元素上,返回一个可迭代map对象. class map(object):""&qu ...

  5. python购物车结算不了_python中购物车

    python的基础语法 python数据类型:(按特征划分) 数字类型: 1.整形:布尔形.长整型L.标准整形 2.非整形:双精度型.复数.decimal(不是内建类型) 序列类型: 1.字符串(st ...

  6. python的random()函数用法_python中的随机函数random的用法示例

    一.random模块简介 Python标准库中的random函数,可以生成随机浮点数.整数.字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等. 二.random模块重要函数 1 ).ra ...

  7. python用turtle画月亮_python中简单易学的绘图:用turtle画太极图

    为什么想画太极图呢?因为我儿子不知道是看了哪本书还是哪个电视,竟然特地打印出一张太极图要挂在大门口,我赶紧说祖宗这挂在门外,别人看见了还以为咱家出什么事了,你喜欢就挂自己卧室门口吧,于是这张图就成了他 ...

  8. python里的join方法_python中join()方法介绍

    描述 Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串. 语法 join()方法语法: str . join ( sequence ) 参数 sequence -- ...

  9. python怎么用第三方库_python中第三方库的下载方法

    1.最常用:在命令行中输入  pip install "库名称"  例如 pip install gensim 查看pip的命令集: pip uninstall "库名& ...

最新文章

  1. 首款微控制器级树莓派 Pico,超廉价只需4美元
  2. 元宇宙:基础-虚拟现实栈开发和虚拟土地
  3. 数据模拟工具wgsim
  4. 升级SharePoint数据库到SQL Server 2005的一点心得
  5. 如何使用 Java 生成二维码?
  6. pageadmin CMS网站建设教程:站点添加自定义字段
  7. 交换机是如何对数据包打标签去标签的_条形码软件如何在标签纸上套打可变条码...
  8. js拦截物联返回键跳转到指定页面
  9. 从1亿个ip中找出访问次数最多的IP
  10. python股票收益率计算_股票分析之——收益率(附完整代码和讲解)
  11. 《问佛》------------一篇精辟人生哲理短文(转)
  12. 博士申请 | 香港中文大学LaVi Lab王历伟老师招收人工智能全奖博士生
  13. MFC设置编辑框内容
  14. 苹果 开发者账号如下
  15. 如何判断视频的比例(4:3/16:9)和分辨率?
  16. 互动游戏对战平台推荐:盘点很火的互动小游戏多人对战平台
  17. SSH工具:Xshell正版官方免费版下载,不限制站点数量
  18. 在计算机系统中 屏幕的显示分辨率为,屏幕分辨率调不了怎么办 电脑分辨率显示不正确时应该怎么做...
  19. 在线破解网吧下载限制工具的制做方法。。
  20. 2023年软件测试工程师,初级到高级进阶路线指南,测试之路...

热门文章

  1. 使用indexOf()算出长字符串中包含多少个短字符串
  2. Java-绘图相关技术
  3. 第二章 物理层 2,3 数据通信基础知识 [计算机网络笔记]
  4. 计算机操作系统——处理机调度算法
  5. bs 程序用户个性化设置保存_想更改win10设置,这12种打开方法你不可不知,方便又快捷...
  6. mysql授予权限和撤销权限的关系_MySQL数据库常用的授予权限和撤销权限的命令讲解...
  7. 踩内存是什么意思啊_网络资讯:0x0000008e蓝屏代码是什么
  8. PyTorch框架学习二——基本数据结构(张量)
  9. Linux下安装Redis(三分钟搞定)
  10. 开源数据分析工具 CyberChef