Python游戏如何解决游戏操作中产生的不便


如果你想在游戏中“畅通无阻”时,你可以从Python游戏开始,学习Python游戏的实际应用技术,如果你对其右兴趣的话,你就可以浏览我们以下的文章,希望你会有所收获,以下是文章的详细介绍。

这是一个晴朗的星期六下午, 你悠闲地在网上浏览. 忽然间你看到一个留言板上的小游戏. 它很简单,问题是: 把五个数字 56789, 放到 {{{[][][] * [][], 令结果最大.。

你最先对自己说: "这有什么难, 把最大的放到最大位数那里就行了." 你再心算了一下, 也许不对. 每个结果要看其他位置上放了什么数才行. 你开始觉得有些兴趣了, 反正你正在学一种好玩的编程语言, 何不练习一下呢?

於是你开出你心爱的 Python游戏, 开始思考: "其实我要的是一个程式, 我给它各种数字的组合, 然后它自动帮我找出最大的一个. 如果我传入 1,1,1,1,1 和 1,1,1,1,2, 它会知道要算 111 * 11 和 111 * 12, 求出较大的是 111 * 12 并输出这个组合以及其乘积. 这个程式并不难嘛."

  1. 1 # calc.py  
  2. 2 def calc(seq):  
  3. maximum = 0 
  4. max_item = []  
  5. 5 for i in seq:  
  6. product = (i[0]*100 + i[1]*10 + i[2]) * (i[3]*10 + i[4])  
  7. 7 if product > maximum:  
  8. maximum = product 
  9. max_item = i  
  10. 10 elif product == maximum:  
  11. 11 max_item += ','+i  
  12. 12 return max_item, maximum  
  13. 13   
  14. 14 seq = [ [5,6,7,8,9], [5,6,7,9,8] ]  
  15. 15 max_item, maximum = calc(seq)  
  16. 16 print "Maximum at", max_item, ",product", maximum  

你试了一下,

  1. $python calc.py   
  2. Maximum at [5, 6, 7, 9, 8] ,product 90160   
  3.  

没问题. 现在你只要给出所有的排列即可. 你打了几行, 觉得 [5,6,8,7,9] 这样打太辛苦了, 而且用 i[0]*100 + i[1]*10 ... 的方法好像太难看了, 因此你有必要做一次修改. 好, 用字串吧. "56789", 这样输入时较方便, 而且 int("567") * int("89") 要好看得多, 也应该快些. 另外你也把程式改得更短, 看起来像是个有经验的人所写. 以上的文章就是对Python游戏的部分介绍。

相关内容

    暂无相关文章

评论关闭