Python游戏源码在线学习

今天我们来讲解一下如何通过我们所学的python知识, 快速学会用Python程序玩转股票...
对于广大安卓用户来说,平时更为关注的可能是手机的外观和性价比,往往会忽视手机的安全性能,更难意识到原来老旧的手机系...
定义匿名函数指一类无须定义标识符的函数或子程序。Python用lambda语法定义匿名函数,只需用表达式而无需申明。lambda语法...
文件操作必不可少的是open函数:对文件读写之前,需要先打开文件,获取文件句柄注意:open() file() 尽量使用open(),Pyt...
近日,创新工场创始人李开复最近接受了 CGTN(中国国际电视台)的采访,谈到中国正在经历一场人工智能发展大革命,大家对...
有编程基础的人一看就可以了解 Python 的用法了。真正的 30 分钟上手。国外一...
在python爬虫爬取某些网站的验证码的时候可能会遇到验证码识别的问题,今天就来看...
python 的 web 框架非常多,比较出名的有 django, flask, tornado。django ...
前言PHP是一门托管型语言,在PHP编程中程序员不需要手工处理内存资源的分配与释放(使用C编写PHP或Zend扩展除外),这就意味着PHP本身实现
相信很多用了mysql很久的人,对这两个字段属性的概念还不是很清楚,一般会有以下疑问:1、我字段类型是not null,为什么我可以插入空值2、
MySQL中is not null和!=null和null的区别
Copyright & 2012 - 2018 PYTHONTAB.COM.39,966被浏览4,010,126分享邀请回答crossin.me)在线教程: 以下喂自己袋盐:现在有很多人都想学一点编程,但是直接看教程又有点太难下手。之前有几个朋友都问我能不能指导他们一下入门学个语言,于是我就弄了个微信公众号“Crossin的编程教室”(微信号crossincode,有个同名的山寨号,不要加错了)。每天讲一点点很简单的内容。如果有0基础想入门的新手,不如来跟着看看,欢迎加入我们共同学习的队伍。----------------更新基础内容早已讲得差不多了,现在整理成了系列教程,可在公众号里阅读。定期推送一些专题,比如查天气预报、搭建网站、数据采集之类的小项目,还有编程相关的知识和经验文章。也可以直接访问: ----------------更新开通了知乎专栏:主要发一些编程入门和科普向的文章:
内容不断更新中...公众号 Crossin的编程教室(crossincode).21K382 条评论分享收藏感谢收起dylanninin.com/blog/2013/11/23/python_resource.html,这里摘抄一下。入门和基础Python有Python 2.x 和Python 3.x 之分,争论很多,见。初学者不用考虑这个问题,可以从Python 2.x入门,之后再讨论会多一些理性。:豆瓣网洪强宁在QCon北京2010中的技术分享,若不能访问,请自备梯子;另外,豆瓣的很值得关注。:即简明Python教程,边看边练习就对Python有基本的了解,可以轻松存活。:Google出品的Python教程,值得信赖。:Python在线文档,若嫌枯燥,可以直接看。:江湖人称的Python入门指引,除开。严格来说,这是张教主的一份Python资料索引。:作为计算机相关人士,都不了解,实在很惭愧,所以来还债了。这应该是起源于教程,一个用Python,一个用Scheme。:同学发的一个贴,总结了一下应聘中遇到的问题,并给出了相应的资料来学习。如果想检测下自己的Python水平,请自觉移步。MOOC们:在线公开课很多,见;仅在上学了一点;现在希望能够每天跟进一些感兴趣的课程,多多学习。书:去年6月份一同事离职,我买了两本,一本送给他(博客),另一本给部门老大;他回送了一本,看书名就知道是讲底层原理的,有机会啃啃。源代码:直接到上去找吧。Python与数据库在项目开发中,数据库应用必不可少。这里汇总下目前接触过的数据库和使用教程。SQL,计算机出身的人应该都学过,若有疑问可以参考,并使用SQLite做下练习。:数据库访问接口规范,当时还做了一份。:教程见;若要深入了解,推荐;看此书时,做了一些好句子、段落的摘要,见。:教程见。:有可能这是最庞大的数据库,所以需要专职的DBA。官方教程,快速入门教程。:Python的ORM标准和框架,解决面向对象编程和关系数据库模式不匹配的问题。数据库理论除了SQL,还有另一派NoSQL。关于常见NoSQL产品的比较见;若果需要一些NoSQL的理论知识和基本概念,见、。目前仅用过和。MongoDB:如果熟悉SQL,MongDB的学习成本会很低;相关资料见;用过的两个驱动:1),提供了类似Mongo Shell的接口;2): A Python Object-Document-Mapper for working with MongoDB,即MongoDB的'ORM'框架,此时变成了'ODM',。Redis:Redis需要一些学习成本,入门推荐;用过的Python客户端驱动;更多客户端见。NoSQL建模:SQL发展了几十年,有很成熟的建模技术,那么NoSQL呢,见,原文。更多资料:NoSQL英文站点见;NoSQL中文论坛见。NoSQL Fan中,MongoDB和Redis资料很多,已经形成了资料专题,包括介绍、内部实现、应用与优化、新闻等,总能发现你想要的东西:1);2)。Python与Web开发Python的Web框架众多,见,总有一款适合你或你的项目,实在不行,请动手打造自己的框架;为什么会有这么多框架呢,见。:已故的框架。一句话介绍"web.py is a web framework for Python that is as simple as it is powerful. web.py is
you can use it for whatever purpose with absolutely no restrictions."。接触的第一个Web框架,后来模仿MovableType,写了一个简单的博客,见,在线demo ;碰到的坑点是模板中嵌套Python代码一直有缩进问题。:一句话介绍"Flask is a lightweight web application framework written in Python and based on the Werkzeug WSGI toolkit and Jinja2 template engine. It is BSD licensed. Flask is called a microframework because it keeps the core simple but extensible"。因为工作变动,练习过一段时间的Flask,以便熟悉开发的工具链;如果没有Rails,我想这才是自己首选的Web开发框架: simple but extensible and for fun。实战教程。:来自的异步框架,FriendFeed被Facebook收购后开放了源代码,见。一句话介绍"Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed"。Tornado主要特点是,如果你想开发的Web应用,Tornado是一个不错的选择。:一句话介绍"Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.",接触不多,作为全栈式框架,听说它的组件都是Made in Django。更多资料见。IDE + 。目前就用这个方案,很方便,直接引用同学的。关于Vim资料和讨论,请移步;关于Vim更多插件和演示,请移步;关于Git,Github,请移步本站。社区周刊:每周更新,包括Python相关的文章、教程、演讲、书籍、项目、工作等。:与Python Weekly类似,两者可以互为补充,了解过去一周动态。: 出品的周刊,来自国人的分享。可以先看;接着; 再接着。这里不仅仅是Python。更新 Python 3前面提到,『Python有Python 2.x 和Python 3.x 之分,争论很多,见。初学者不用考虑这个问题,可以从Python 2.x入门,之后再讨论会多一些理性。』目前来看,已然不妥:对于新手,推荐直接学习 Python 3.x;对于还停留在 Python 2.x 的,则应尽快拥抱变化,与时俱进。对于项目的开发维护来说,在新旧版本中来回穿梭/切换是一件痛苦的事儿,也会增加很多不必要的负担,因此尽快推进将手头的项目升级到 Python 3.x(当前最新版本为 3.5)。但升级绝不是拍拍脑袋就能决定的,具体参考 。在 2015 年年底,便将一个开发维护近半年的 Web 项目顺利从 2.7 升级到 3.5,这与单元测试覆盖足够、第三方依赖库都支持 Python 3、团队成员愿意持续学习是分不开的。1.4K25 条评论分享收藏感谢收起求一个非常简单的python小游戏_百度知道
求一个非常简单的python小游戏
急求一个pyyhon 2.73 编写的小游戏
没学多久,要求不高
要求如下:
4 functions
4 if/elif/else
4 numerical variables
以及pygame图形界面
代码可以发到我邮箱
非常急,就一天时间。希望能有人帮帮...
我有更好的答案
可以看看这个
采纳率:14%
为您推荐:
其他类似问题
python的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Python小游戏--扫雷
  最近在学习python,闲来有空想看看自己的学习成果,做了一个简易的扫雷游戏。效果如下图:
  游戏运作流程:首先是绘制一个8X8矩阵,所有雷区地块初始显示为1,表示没有清扫。用户输入要清扫的雷区地块x,y坐标。程序进行检测,如果没有雷,雷区地块显示改为0,表示已经清扫了,否则显示改为X,然后绘制出已经清扫的雷区地块和全部有雷地块,并计算出用户得分。
  游戏数据结构与逻辑:游戏的数据保存使用了list构造出一个8X8矩阵存储。
list中的值只要3种,0-没有地雷;1-有地雷;2-已经清扫。每次用户输入x,y坐标后,都进行修改list中的值。游戏乐趣的关键点在于地雷的随机分布设计。我采用了random函数,雷的最大个数为15个,每次游戏开始前,程序对地雷进行随机分布。好了,说了这么多,还是读者自己看程序代码吧,程序不太复杂,一看就明白。
------------------------------------begin--------------------------------------------------
# -*- coding: utf-8 -*-
'''@author: Rayment
&& @version: 1.0
&& @note: 实现扫雷游戏()
测试环境:python2.5.2
import sys
import random
import string
class MineSweeping():
'''扫雷主程序
__init__(self):
'''初始化函式
self.ROW = 8
self.LINE = 8
self.SCORE = 0 #扫雷得分
self.MineNum = 15 #地雷总数
self.xy_list= [[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0],
&&&&&&&&&&&&&&&&&&&&&&&&
[0,0,0,0,0,0,0,0]]
iniData(self):
'''x,y坐标初始状态值函数
&&&&&&&&&&
0-没有地雷;1-有地雷
#游戏开始前所有数值归零
for l in range(self.LINE):
&&&&&&&&&&&
for r in range(self.ROW):
&&&&&&&&&&&&&&&
self.xy_list[l][r]= 0
Max = self.MineNum
for x in range(self.LINE):
&&&&&&&&&&&
for y in range(self.ROW):
&&&&&&&&&&&&&&&
if 0 & Max:
&&&&&&&&&&&&&&&&&&&
self.xy_list[x][y]= 0
&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&
#为了增加地雷分布范围,选择0到4随机数
&&&&&&&&&&&&&&&&&&&
if 1 == random.randint(0,4):
&&&&&&&&&&&&&&&&&&&&&&&
self.xy_list[x][y]= 1
&&&&&&&&&&&&&&&&&&&&&&&
Max = Max - 1
&&&&&&&&&&&&&&&&&&&&&&&
getX(self):
'''获得x坐标值
&&&&&&&&&&
@return : 返回x坐标值
&&&&&&&&&&
@type : int
sys.stdout.write('X=')
xRet = raw_input()
while xRet=='' or (False == self.isNumber(xRet))\
&&&&&&&&&&&&
or 0&int(xRet) or
int(xRet)&self.ROW:
&&&&&&&&&&&
print 'Wrong number!(please input 0-7)'
&&&&&&&&&&&
sys.stdout.write('X=')
&&&&&&&&&&&
xRet = raw_input()
return int(xRet)
getY(self):
'''获得y坐标值
&&&&&&&&&&
@return : 返回y坐标值
&&&&&&&&&&
@type : int
sys.stdout.write('Y=')
yRet = raw_input()
while yRet=='' or (False == self.isNumber(yRet))\
&&&&&&&&&&&&
or 0&int(yRet) or
int(yRet)&self.LINE:
&&&&&&&&&&&
print 'Wrong number!(please input 0-7)'
&&&&&&&&&&&
sys.stdout.write('Y=')
&&&&&&&&&&&
yRet = raw_input()
return int(yRet)
isNumber(self,strVal):
'''检查是否数值
&&&&&&&&&&
@param : 需检查的字符串
&&&&&&&&&&
@type : str
nums = string.digits
for i in strVal:
&&&&&&&&&&&
if i not in nums:
&&&&&&&&&&&&&&&
return False
return True
checkMine(self,xPos,yPos):
'''检查输入坐标是否有雷
&&&&&&&&&&
0-没有地雷;1-有地雷;2-已经清扫
&&&&&&&&&&
@param 1: x坐标
&&&&&&&&&&
@type : int
&&&&&&&&&&
@param 2: y坐标
&&&&&&&&&&
@type : int
&&&&&&&&&&
@return : 0-没有地雷;1-有地雷;2-已经清扫
&&&&&&&&&&
@rtype : int
if 0 == self.xy_list[xPos][yPos]:
&&&&&&&&&&&
self.xy_list[xPos][yPos] = 2
&&&&&&&&&&&
elif 2 == self.xy_list[xPos][yPos]:
&&&&&&&&&&&
&&&&&&&&&&&
&&&&&&&&&&&&&&&
play(self):
'''游戏运行函数
self.display(1)
self.SCORE = 0
self.iniData()
#print self.xy_list
&&&&&&&&&&&
x = self.getX()
&&&&&&&&&&&
y = self.getY()
&&&&&&&&&&&
while(2 == self.checkMine(x,y)):
&&&&&&&&&&&&&&&
print 'values of x,y had inputed,please input new values!'
&&&&&&&&&&&&&&&
x = self.getX()
&&&&&&&&&&&&&&&
y = self.getY()
&&&&&&&&&&&
if 1 == self.checkMine(x,y):
&&&&&&&&&&&&&&&
self.end()
&&&&&&&&&&&&&&&
&&&&&&&&&&&
&&&&&&&&&&&&&&&
self.display(2)
&&&&&&&&&&&&&&&
self.SCORE = self.SCORE + 1
&&&&&&&&&&&&&&&
&&&&&&&&&&&
end(self):
'''游戏结束函数
self.display(3)
print '+======================+'
Over&&&&&&
print '+======================+'
print '&& Your score is:
'%self.SCORE
display(self,kind):
'''图形输出函数
&&&&&&&&&&
@param:1-初始;2-运行;3-结束
&&&&&&&&&&
if kind==1:
&&&&&&&&&&&
print '+======================+'
&&&&&&&&&&&
Start&&&&&
&&&&&&&&&&&
print '+======================+'
&&&&&&&&&&&
print '*-----------------*'
&&&&&&&&&&&
for i in range(self.LINE):
&&&&&&&&&&&&&&&
print '| 1 1 1 1 1 1 1 1 |'
&&&&&&&&&&&
print '*-----------------*'
&&&&&&&&&&&
print 'Please input values of x,y(0-7):'
elif kind==2:
&&&&&&&&&&&
#输出已经清扫位置
&&&&&&&&&&&
print '*-----------------*'
&&&&&&&&&&&
for i in range(self.LINE):
&&&&&&&&&&&&&&&
sys.stdout.write('| ')
&&&&&&&&&&&&&&&
for k in range(self.ROW):
&&&&&&&&&&&&&&&&&&&
if 2 == self.xy_list[i][k]:
&&&&&&&&&&&&&&&&&&&&&&&
sys.stdout.write('0 ')
&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&
sys.stdout.write('1 ')
&&&&&&&&&&&&&&&
&&&&&&&&&&&
print '*-----------------*'
&&&&&&&&&&&
print 'Please input values of
x,y(0-7):'&&&&&&&&&&
&&&&&&&&&&&
#输出所有的地雷与已经清扫位置
&&&&&&&&&&&
print '*-----------------*'
&&&&&&&&&&&
for i in range(self.LINE):
&&&&&&&&&&&&&&&
sys.stdout.write('| ')
&&&&&&&&&&&&&&&
for k in range(self.ROW):
&&&&&&&&&&&&&&&&&&&
if 2 == self.xy_list[i][k]:
&&&&&&&&&&&&&&&&&&&&&&&
sys.stdout.write('0 ')
&&&&&&&&&&&&&&&&&&&
elif 1== self.xy_list[i][k]:
&&&&&&&&&&&&&&&&&&&&&&&
sys.stdout.write('X ')
&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&
sys.stdout.write('1 ')
&&&&&&&&&&&&&&&
&&&&&&&&&&&
print '*-----------------*'
&&&&&&&&&&&
if __name__ == '__main__':
&&& '''自测试
MineSweeping()
print '\n----------------------------------------------'
print 'Quit game press \'q\',otherwise press other key!'
print '----------------------------------------------'
inputVal = raw_input()
if 'q' == inputVal:
&&&&&&&&&&&
------------------------------------end--------------------------------------------------
代码下载:http://download.csdn.net/detail/raymentblog/3628972
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

 

随机推荐