0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

结合for循环实现两辆汽车相向而行

麦辣鸡腿堡 来源:Python都知道 作者:了 2023-07-05 16:31 次阅读

要实现汽车跑动,首先我们要加载一张城市道路图作为背景图,然后就要把海龟的图形变为汽车的模样,最后实现两辆汽车相向而行的效果。

首先,加载背景图片:

turtle.bgpic(picname=None)

turtle.bgpic(picname=None)设置背景图片或返回当前背景图片的名称。如果picname 是文件名,则将相应的图像设置为背景。如果 picname"nopic" ,则删除背景图像(如果存在)。如果 picnameNone ,则返回当前背景图像的文件名。

这里我们加载同文件目录下的背景图片如下:

import turtle
turtle.bgpic("bg1.png")  # 加载背景图片

然后,添加汽车作为画笔形状:

turtle.register_shape(name)

turtle.register_shape()可以新增更多的画笔shape,其用法之一就是添加gif图片作为画笔的新形状。使用自己的图片作为画笔shape时需要注意,首先海龟仅支持gif图片,另外这样的画笔shape无论怎样设置resizemode均不能通过shapesize指令进行笔头大小设置。以图片作为shape,笔头的大小就是由图片本身大小所决定的。当然,turtle.register_shape()还可以添加用元组作为坐标描述的多边形作为画笔的shape,这里我们并没有用到,就不过多赘述了。

因为我们要实现两辆汽车相向而行,所以要创建两个turtle的实例,并加载不同形状的汽车,如下:

turtle.register_shape('car1.gif')   # 把小车图片放入海龟可用形状仓库中,便于调用
car1 = turtle.Turtle()   # 生成turtle,命名为car1
car1.shape('car1.gif')

turtle.register_shape('car2.gif')
car2 = turtle.Turtle()
car2.shape('car2.gif')

最后,就是和乌龟赛跑一样,利用for循环实现汽车一起运行的效果:

car1.penup()  # 抬笔,不要留下轨迹
car2.penup()

car1.goto(-300, -110)
car2.goto(300, -200)

car2.left(180)
#
car1.speed(2)
car2.speed(2)
#
for sp in range(1, 80):
    car1.forward(sp)
    car2.forward(sp)
#
turtle.done()

所以,所有总的代码是:

import turtle
turtle.bgpic("bg1.png")  # 加载背景图片

turtle.register_shape('car1.gif')   # 把小车图片放入海龟可用形状仓库中,便于调用
car1 = turtle.Turtle()   # 生成turtle,命名为car1
car1.shape('car1.gif')

turtle.register_shape('car2.gif')
car2 = turtle.Turtle()
car2.shape('car2.gif')

car1.penup()  # 抬笔,不要留下轨迹
car2.penup()

car1.goto(-300, -110)
car2.goto(300, -200)

car2.left(180)
car1.speed(2)
car2.speed(2)
for sp in range(1, 80):
    car1.forward(sp)
    car2.forward(sp)
turtle.done()

实现的效果如下:

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码
    +关注

    关注

    6

    文章

    946

    浏览量

    54870
  • 循环
    +关注

    关注

    0

    文章

    92

    浏览量

    15999
  • python
    +关注

    关注

    56

    文章

    4798

    浏览量

    84809
收藏 人收藏

    评论

    相关推荐

    关于两辆智能小车如何保持一致,在同一垂直水平上。。

    两辆小车位置保持一致的方法。。如果位置偏移了。可以通过单片机来控制自动调整。。如果不用红外线。请问用什么传感器来实现比较好。。。
    发表于 04-21 16:15

    年产销量最高3000万

    全球榜首。仅用了年时刻就完结销量翻番。在这种状况下,一些达观人士按照年增159或许204的经济开展规律来核算,无怪乎能够得出7500万的数字。更有甚者,以为按照美国1∶1.3的汽车保有量来核算,即使
    发表于 07-20 06:55

    两辆小车:遥控避障&四轮循迹

    `第一小车是大一的时候做的,有遥控和chao sheng bo避障功能(那个好像是违禁词,发不了,就用拼音了),视频里只显示遥控功能,因为避障功能做出来不久后就嫌小车碍地方就拆了,没有拍下视频
    发表于 08-11 23:38

    SLH89f5162单片机实现无人车间控制系统

    子系统之间通过无线芯片交流信息。时间安排:资料及材料准备,至11月15。各个芯片单独调试,至12月15。两辆物料转移小车,个机台及物料循环模块的制作,安装和调试。与第二步同步进行。各单独模块的组装,整体调试,暂定调试至14年2
    发表于 10-30 22:09

    【酬金】如何根据图片上两辆车的距离算出实际距离

    `如何根据图片上两辆车的距离算出实际距离求大神酬金好说 扣扣136257271`
    发表于 03-01 16:04

    北京首私人纯电动汽车上路

    北京首私人纯电动汽车上路据新华网报导,随着北京新能源汽车首批首期目录公布,纯电动汽车销售日前在北京正式开始向私人开闸。3月2日,北京市科委携手北汽新能源
    发表于 04-22 14:46

    台电机如何实现异步工作?

    实现台电机工作异步,具体如图。1、台电机,一小车,小车左右侧有绳子;2、左侧电机拽着小车时,右侧电机不动,直到小车到达最左侧;3、右
    发表于 12-27 17:33

    PIC32MZ2048ECH144如何实现一个低成本的无控制器系统

    写入数据。这是正确的吗?如果是的话,我为什么需要两辆公共汽车?此外,我无法找到一个地址自动增量功能EBI,而它是可用的PMP。是否有一些寄存器可以让EBI处理这个特性?谢谢
    发表于 04-30 06:06

    台新车就有一台内含英飞凌微控制器

    英飞凌科技的TriCore微控制器出货量已逾 1 亿组。全球有五十个以上的品牌车厂採用英飞凌TriCore微控制器,换言之,几乎目前生产的每两辆汽车当中就有一採用TriCore微控制器,维持最
    发表于 11-22 09:16 553次阅读

    全世界首场无人驾驶电动车比赛开赛 仅两辆车参加

    北京时间2月20日上午消息,电动无人驾驶汽车竞赛Roborace上周六举行了第一场比赛,有两辆DevBot无人驾驶电动赛车在布宜诺斯艾利斯的ePrix Formula E赛道上展开比拼。 此次
    发表于 02-20 17:28 800次阅读

    两辆ff样车运抵北京 车回过了贾跃亭人却依然见不着

    贾跃亭的汽车梦又进一步了。近日,两辆ff样车运抵北京,贾跃亭本人依然没有亮相,是害怕被讨债者围追堵截吗?这两辆ff样车估计有危险了,讨债者会不会拿去抵债呢?
    发表于 05-02 09:48 2586次阅读

    北京纯电市占率达43.1%,比亚迪为何会成为首家产销破30万的新能源车企?

    “在北京街头每两辆纯电动汽车,就有一是比亚迪。” 比亚迪汽车总经理助理叶庭文先生在8月24一场名为“向新·定义未来——2018比亚迪新能源智Di有声臻享会”上透露。
    发表于 08-30 09:57 782次阅读

    哪吒汽车2019年的第10000汽车已正式下线

    据悉,哪吒汽车是合众新能源的产品品牌,旗下共有款量产车型,分别为哪吒N01和哪吒U,而哪吒汽车2019年的第10000汽车已正式下线。
    的头像 发表于 01-10 09:39 3003次阅读

    宝马R18摩托车国内上市 价格能买两辆思域

    不仅在乘用车方面,在摩托车领域,宝马也是货真价实的高端品牌,甚至一摩托都能买两辆汽车。 日前,我们于宝马官方了解到,宝马继承者系列,首款旗舰巡航摩托车—全新BMW R18正式登陆中国市场,并同
    的头像 发表于 12-17 11:19 4354次阅读

    如何用Python for循环实现两辆汽车相向而行

    实现汽车跑动,首先我们要加载一张城市道路图作为背景图,然后就要把海龟的图形变为汽车的模样,最后实现两辆
    的头像 发表于 09-27 16:41 769次阅读