提高地图制作者的功能

时间:2015-03-19 23:40:41

标签: python python-3.x pygame

我的代码当前读取一个字符串(由数字0 - 9组成)并使用该值将一个磁贴blit到相应数组中的屏幕。由于我使用数字,因此很容易将字符串切片以获得一个字符并将该值转换为int以将其用作索引,例如:

display.blit(tiles[int(slicedString), rect])

由于我使用这种方法,因此我只能在tiles数组中有10个元素(因为我不能像10那样切割数字)。任何人都可以想办法解决这个问题,让我们说,在数组中有20个元素吗?

1 个答案:

答案 0 :(得分:1)

以同样的方式,例如十六进制对'a'使用10'b'使用11,依此类推,只需使用9以外的数字:

0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j

这样做的一个优点是Python中的int已经为base以外的10实现了这一点:

>>> int('a', 20)
10
>>> int('j', 20)
19
>>> int('hi', 20)
358

简化了您的实施。