小编Ric*_*ard的帖子

是否可以使用splinter按文本选择选项(例如,当select选项没有值时)?

<select id = 'foo' name = 'foo'>
    <option>aaaaa</option>
    <option>bbbbb</option>
    <option>ccccc</option>
    <option>ddddd</option>
</select>
Run Code Online (Sandbox Code Playgroud)

似乎在命令"browser.select("foo",value)中"需要一个值.

这有解决方法吗?非常感谢.

splinter

4
推荐指数
1
解决办法
735
查看次数

如何针对性能优化此代码?

我在pygame中制作游戏,其完整源代码可在此处找到:

https://github.com/hailfire006/games/blob/master/strategy%20game

不幸的是,我遇到了一些帧速率问题,我读到的关于这类问题的所有内容都说它是图形化的,即它与数学无关,与绘制精灵有关.

因此,我将问题缩小到我的npc类的以下绘制函数,该函数在我的"对象"列表中的每个npc的每个帧都被调用.它有很多精灵旋转,一个set_colorkey和一个重新调整大小.所有这些都可能是相当昂贵的,所以有没有办法我可以重新编写以下代码来优化它的性能?

PS:对不起,如果我要问的或代码的部分内容不清楚,请指出是否有些令人困惑,我会编辑我的问题.

b = pygame.sprite.Sprite()
b.image = pygame.image.load("soldier.png").convert()
b.image.set_colorkey((0,0,0))

target = get_target(self)
if target != 0:
    angle = math.degrees(math.atan2(self.x - target[0], self.y - target[1])) + 90
    b.image = pygame.transform.rotate(b.image,angle)
    self.shoot(target)

if self.moving != False:
    if abs(self.x - self.moving[0]) < 1 and abs(self.y - self.moving[1]) < 1:
        self.moving = False
    else:
        self.move(self.moving)
        if target == 0:
            angle = math.degrees(math.atan2(self.x - self.moving[0],                   self.y - self.moving[1])) + 90
            b.image = pygame.transform.rotate(b.image,angle)

b.image = pygame.transform.smoothscale(b.image,(50,50))
b.rect = b.image.get_rect()
b.rect.topleft = [self.x …
Run Code Online (Sandbox Code Playgroud)

python optimization pygame

0
推荐指数
1
解决办法
65
查看次数

标签 统计

optimization ×1

pygame ×1

python ×1

splinter ×1