摘要:它们都是用来匹配一些动态内容的,只不过匹配的内容类型不同。所有值通过操作符匹配。
嗯,我知道你们此时心里想的是什么:“上次为什么这么短?” “是不是存心搞我们?” 呃······但我的v1.0 beta 1就是这样发布的!!!但不管上次多短,我们的编程还是要继续下去。今天我们的工作:增加状态显示及彩色!
关于前作链接:由于文章太多,我决定只在每篇文章中显示上篇链接。这里就是:从0开始用python写一个命令行小游戏(六)
我的v1.0 beta 1发布后,有测试用户说各种内部进行的操作看不出来,我就想到了这个方法:对于每个操作,都输出一个状态,就一目了然了。我的解决方法如下:
class Sunflower(Plant): indicating_char = "s" def __init__(self, pos): super().__init__(pos, 50) print("Sunflower planted at %d, costing 50 sunlight." % self.pos) def step(self): # 其余部分同前 print("Sunflower at %d produced 25 sunlight." % self.pos)
别的类也类似。这里简单的说一下"%d"、"%s"等的作用。它们都是用来匹配一些动态内容的,只不过匹配的内容类型不同。所有值通过%操作符匹配。%d匹配int类型,%s匹配str类型,等等。有多个匹配值时,%后内容加括号(相当于使用元组)。例:
name = "peter" age = 20 print("%s is %d years old." % (name.title(), age)) # 输出:Peter is 20 years old.
这种将不同类型的动态值嵌入字符串的方法在嵌入int类型时十分高效,再也不用"..." + str(val) + "..."这样进行嵌入了。
好了,回到正题。
彩色显示我的百度结果: