Python编程 从入门到实践 第13章 13-3练习题疑问

在自学Python编程时,遇到一个关于创建雨滴动画的问题。当使用`self.y = float(self.rect.y)`更新雨滴位置时,画面只显示一行雨滴,而期望是多行雨滴下落。若改为直接用`self.rect.y += 雨滴速度`,则能正常显示。寻求站友帮助,探讨原因。
摘要由CSDN通过智能技术生成

题目:寻找一幅雨滴图像,并创建一系列整齐的雨滴。让这些雨滴往下落,直到到达屏幕底端后消失。

自学Python遇到一个想不通的问题。
为什么如下图将self.y = float(self.rect.y)之后,最终生成的画面是只有一行雨滴,而不是几行雨滴。
如果直接用 self.rect.y += 雨滴的速度 就不会出现这样的问题。
有站友有同样的问题吗?谢谢大家!

raindrop模块

import pygame

from pygame.sprite import Sprite

class Raindrop(Sprite):
	def __init__(self, rf_settings, screen):
		super(Raindrop, self).__init__()
		self.screen = screen
		self.rf_settings = rf_settings
		
		self.image = pygame.image.load('images/raindrop.bmp')
		self.rect = self.image.get_rect()
		
		self.rect.x = self.rect.width
		self.rect.y = self.rect.height
		
		self.x = float(self.rect.x)
		self.y = float(self.rect.y)
		
		
	def update(self):
		self
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值