Skip to main content
 首页 » 编程设计

python之改进 Map Creator 的功能

2025年05月04日22zengkefu

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

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

因为我使用了这个方法,所以我在 tiles 数组中只能有 10 个元素(因为我不能切片像 10 这样的数字)。谁能想出解决这个问题的方法,比方说,在 tile 数组中获取 20 个元素?

请您参考如下方法:

以同样的方式,例如十六进制用'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 

这样做的一个好处是 int在 Python 中已经为 10 之后的 base 实现了这个:

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

这简化了您的实现。