python 2048

1.ord()可以将传入的参数返回为accii编码

2.zip()将可迭代参数打包成一个个元组并返回

3.列表乘法,相当于将列表复制几份并返回

4.x for i in range(5),返回一个列表,所有带for的同时写入一行,返回都是一个列表

5.转置与逆转矩阵,可以做到访问每列

6.assert 判断其后语句布尔值必须为真,若为假则停止程序运行

7.lanbda匿名函数:g = lambda x:x+1

可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体,用函数来表示为:冒号前面是参数,冒号后面是返回值,调用的时候要用()

1 def g(x):2     return x+1

8.内置函数any(),判断参数中的科迭代对象是否全部为0,NONE,false,如果是则返回false

9.矩阵转置:[row for row in zip(*[(1,1,1,1),(2,2,2,2),(3,3,3,3),(4,4,4,4)])]

10.矩阵逆置:row[::-1] for row in ....

时间: 2024-11-09 09:42:31

python 2048的相关文章

Python 2048游戏实现

2048游戏算是一个比较完整的项目,项目中我们需要将游戏过程建模,通过有限状态机将游戏主流程模拟出来如下: 对于游戏的整体代码中,关于矩阵逆转,移动处理逻辑算法初学者可以暂时不关注,重点在于游戏主流程代码,这样可以锻炼初学者的思维,让大家更好的学习! 此外,代码中比较常用的库与类是需要初学者去积累的. # -*- coding: utf-8 -*- import curses from random import randrange, choice # generate and place ne

200行Python代码实现2048

200行Python代码实现2048 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到桌面上的程序: LX终端(LXTerminal): Linux命令行终端,打开后会进入Bash环境,可以使用Linux命令 GVim:非常好用的编辑器,最简单的用法可以参考课程Vim编辑器 3. 环境使用 使用GVim编辑器输入实验所需的代码及文件,使用LX终端(LXTerminal)运行所需命令进行操

python写2048小游戏

#!/usr/bin/env python # coding=utf-8 #******************************************************** # > OS : Linux 3.2.0-60-generic #91-Ubuntu # > Author : yaolong # > Mail : [email protected] # > Time : 2014年06月01日 星期日 13:13:39 #******************

用Python做2048游戏 网易云课堂配套实验课。通过GUI来体验编程的乐趣。

第1节 认识wxpython 第2节 画几个形状 第3节 再做个计算器 第4节 最后实现个2048游戏 实验1-认识wxpython 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到桌面上的程序: LX终端(LXTerminal): Linux命令行终端,打开后会进入Bash环境,可以使用Linux命令 Firefox:浏览器 sublime/GVim:好用的编辑器 git,用于获得参考

python学习笔记(五) 200行实现2048小游戏

用前文提到的基础知识,和网上流行的2048源码,用python实现该游戏. 先将用户操作和游戏逻辑绑定. WASD分别对应移动方向上.左.下.右 然后实现矩阵的转置和逆置,这样只要实现一个方向的移动,通过转置和逆置就可以得到其他方向 的移动. 基本的函数声明完成了,下面定义GameField类,主要实现游戏逻辑和状态转换. GameField类和其中包含的一些函数.先看构造函数. 构造棋盘并且刷新棋盘,作为初次游戏的布局. spawn函数为随机某个位置设置随机值. 移动函数,这个函数比较复杂,代

一起来写2048(160行python代码)

前言: Life is short ,you need python. --Bruce Eckel 我与2048的缘,不是缘于一个玩家,而是一次,一次,重新的ACM比赛.四月份校赛初赛,第一次碰到2048,两周后决赛再次遇到2048,后来五月份的广东省赛,又出现了2048.在这三次比赛过程中,我一次2048都没玩过..全靠队友的解释,直到昨天,我突然想起写个2048吧,于是下了个2048玩了几盘,之后就開始用python来写了,心想就不写界面了,为了简洁. 我对python并不熟悉,可是我在之前

【python学习】使用python写一个2048小游戏

个人博客:jerwang.cn 没有参考其他代码,效果图: 话不多少,源代码: https://github.com/jerustc/Python/blob/master/2048.py

游戏2048的python实现

前些日子被问了一下2048是如何实现,说实话当时没有想的特别清晰,所以回答的也比较混乱,后来仔细想想这个问题还是挺有趣的,简单的实现了一下 这个问题里面主要有两个问题,一个是移动时的计算,二是移动前对空的格的处理(就是0的格子). 最初的想法是按行/列,向左移动就从左向右去读,做计算,遇0做处理,后来发现这样是行不通的,应该在移动开始前先把0的格子处理好,例如向左移,要先把为0的放到一行的末尾,然后再平移计算. 具体代码如下: 1 #!/usr/bin/python 2 # -*- coding

Python 练习 —— 2048

1. 引言 2048 这段时间火的不行啊,大家都纷纷仿造,"百家争鸣",于是出现了各种技术版本:除了手机版本,还有C语言版.Qt版.Web版.java版.C#版等,刚好我接触Python不久,于是弄了个Python版--控制台的2048,正好熟悉下Python语法,程序运行效果如下: 图 1  Python版控制台2048运行截图 程序代码加上注释大概150行左右,利用了一些Python内置数据类型的操作节省了不少代码量.下面说说我的编写思路,最后会给出源代码. 2. 2048 实现思