如果你想在游戏中“畅通无阻”时,你可以从Python游戏开始,学习Python游戏的实际应用技术,如果你对其右兴趣的话,你就可以浏览我们以下的文章,希望你会有所收获,以下是文章的详细介绍。
这是一个晴朗的星期六下午, 你悠闲地在网上浏览. 忽然间你看到一个留言板上的小游戏. 它很简单,问题是: 把五个数字 56789, 放到 {{{[][][] * [][], 令结果***.。
你***对自己说: "这有什么难, 把***的放到***位数那里就行了." 你再心算了一下, 也许不对. 每个结果要看其他位置上放了什么数才行. 你开始觉得有些兴趣了, 反正你正在学一种好玩的编程语言, 何不练习一下呢?
於是你开出你心爱的 Python游戏, 开始思考: "其实我要的是一个程式, 我给它各种数字的组合, 然后它自动帮我找出***的一个. 如果我传入 1,1,1,1,1 和 1,1,1,1,2, 它会知道要算 111 * 11 和 111 * 12, 求出较大的是 111 * 12 并输出这个组合以及其乘积. 这个程式并不难嘛."
- 1 # calc.py
- 2 def calc(seq):
- 3 maximum = 0
- 4 max_item = []
- 5 for i in seq:
- 6 product = (i[0]*100 + i[1]*10 + i[2]) * (i[3]*10 + i[4])
- 7 if product > maximum:
- 8 maximum = product
- 9 max_item = i
- 10 elif product == maximum:
- 11 max_item += ','+i
- 12 return max_item, maximum
- 13
- 14 seq = [ [5,6,7,8,9], [5,6,7,9,8] ]
- 15 max_item, maximum = calc(seq)
- 16 print "Maximum at", max_item, ",product", maximum
你试了一下,
- $python calc.py
- Maximum at [5, 6, 7, 9, 8] ,product 90160
没问题. 现在你只要给出所有的排列即可. 你打了几行, 觉得 [5,6,8,7,9] 这样打太辛苦了, 而且用 i[0]*100 + i[1]*10 ... 的方法好像太难看了, 因此你有必要做一次修改. 好, 用字串吧. "56789", 这样输入时较方便, 而且 int("567") * int("89") 要好看得多, 也应该快些. 另外你也把程式改得更短, 看起来像是个有经验的人所写. 以上的文章就是对Python游戏的部分介绍。
【编辑推荐】