- 浏览: 114202 次
- 性别:
- 来自: 西安
最新评论
文章列表
刚在逛CPyUG时看到了个主题讨论python的八荣八耻,见:http://bit.ly/4jeBor, 主题内容如下:
以动手实践为荣,以只看不练为耻。
以打印日志为荣,以单步跟踪为耻。
以空白分隔为荣,以制表分隔为耻。
以单元测试为荣,以 ...
- 2012-05-03 23:48
- 浏览 599
- 评论(0)
与Python自带的random、math、time等模块一样,Pygame框架也带有许多模块来提供绘图、播放声音、处理鼠标输入等功能。
本章将讲述Pygame提供的基本模块及功能,并假设读者已经具有基本的python编程知识,如果在这方面遇到困难,可阅读“Ivent Your Own Computer Games With Python”这本书。
GUI和CLI
使用Python自带的函数print()和input()来操作文本,你的程序可以将文本显示在显示器上并可以让用户从键盘输入文本,这类的程序具有命令行界面(command line interface, 简称CLI),但它 ...
- 2012-05-01 16:19
- 浏览 638
- 评论(0)
一款人性化的游戏中缺少不了声音,比如角色挂时惨叫一声,或PK时武器交锋的声音,还有就是英雄出场时的背景音乐,无不涉及到声音,本节我们就来看一下pygame中如何控制声音,下面是一个例子,但博客上传不了多媒体程序,否则就可以听到加勒比海盗中最为经典的配乐《he's a pirate》了,程序实现了通过上下方向键来控制音量大小的功能。
一、实例界面:
1、初始音量为10
2、通过上下方向键实时调整音乐声音大小:
二、实现代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import os
impor ...
- 2012-04-22 00:29
- 浏览 521
- 评论(0)
再简单的游戏界面中均涉及文字处理,本节主要解读一下pygame模块中对文字及字体的处理方式。 同样,以实例进行讲解,先看看代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import os
import pygame
from pygame.locals import *
def load_image(pic_name):
'''
Function:图片加载函数
Input:pic_name 图片名称
Output: NONE
author: dyx1024
b ...
- 2012-04-21 20:41
- 浏览 758
- 评论(0)
本节讲解游戏界面中字体的处理,以在界面中实时显示当前时间、小球位置为例进行实验,具体见代码。
一、代码
# -*- coding:utf-8 -*-
import os
import sys
import time
import pygame
from pygame.locals import *
from pygame.font import *
def load_image(pic_name):
'''
Function:图片加载函数
Input:pic_name 图片名称
Output: NONE
author: socrates
...
- 2012-04-15 20:31
- 浏览 675
- 评论(0)
上一节实现了小球自由移动,本节在上节基础上增加通过方向键控制小球运动,并为游戏增加了背景图片。
一、实现:
# -*- coding:utf-8 -*-
import os
import sys
import pygame
from pygame.locals import *
def load_image(pic_name):
'''
Function:图片加载函数
Input:NONE
Output: NONE
author: socrates
blog:http://blog.csdn.net/dyx1024
dat ...
- 2012-04-15 19:33
- 浏览 720
- 评论(0)
本节实现一个在窗口中的小球程序,做了详细注释,不多做解释了。
代码:
# -*- coding:utf-8 -*-
import sys
import pygame
from pygame.locals import *
def play_ball():
pygame.init()
#窗口大小
window_size = (width, height) =(700, 500)
#小球运行偏移量[水平,垂直],值越大,移动越快
speed = [1, 1]
#窗口背景色RGB值
colo ...
- 2012-04-15 17:09
- 浏览 799
- 评论(0)
按照上周计划,今天开始学习pygame,学习资料为http://www.pygame.org/docs/,学习的程序实例为pygame模块自带程序,会在程序中根据自己的理解加入详细注释,并对关键概念做说明。
一、pygame版本的hello world程序。
代码:
#!/usr/bin/python
# -*- coding:utf-8 -*-
import sys
#导入pygame模块,第8行的作用是简化你的输入,如不用在event前再加上pygame模块名
import pygame
from pygame.locals import *
def hello_worl ...
- 2012-04-15 11:52
- 浏览 648
- 评论(0)
在文章《Python:通过命令行发送新浪微博》中有朋友多次留言咨询用户粉丝列表获取的方法,本来不打算在写这方面的东东,但出于程序员的特有的执着,还是写一了一下。这位朋友提供了一个链接点击打开链接,其中指定了weiapi(python版本的一个缺陷),参考其先修改了下API,改后如下:
parsers.py中ModelParser类的parse方法,如果你的和下面不一样,请参考修改。
class ModelParser(JSONParser):
def __init__(self, model_factory=None):
JSONParser.__init__ ...
- 2012-04-14 22:23
- 浏览 585
- 评论(0)
一、pygame
pygame是一个设计用来开发游戏的python模块,在SDL库的基础上提供了各种接口,从而使用用户能够使用python语言创建各种各样的游戏或多媒体程序,pygame支持多种操作系统,当然,它是一个开源的软件。
以下是官方的说明:
pygame是 跨平台 Python模块,专为电子游戏设计。 包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低阶语言,如C语言或是更低阶的组合语言束缚。基于这样一个设想,所有需要的游戏功能和理念都(主要是图像方面)都完全简化位游戏逻辑本身,所有的资源结构都可以由高级语言提供,如Python。
Pygame 作 ...
- 2012-04-13 23:08
- 浏览 706
- 评论(0)
从年初接触python至今,三个多月来,学习了一些基本的知识,也写了30多篇总结及小程序,前天通宵加班,昨天调休,闲了一天,突然想写写什么,但实在没有想到具体写个什么东东,用python写过摄像头程序、新浪微博、语音处理、SQLite及PostgreSQL数据库处理、图表处理、Hook相关编程,抓图工具、托盘等,都是想到啥就写啥,没有深入地学习过一个模块。
昨晚认真考虑了下,计划未来三个月主要精力放在python开发游戏方面,对pygame 模块进行较深入的学习,通常实例开发来讲解各api使用,顺便讲pygame的开发手册翻译完,去年翻译C in a NutShell,翻译了3万多字,最终 ...
- 2012-04-13 22:31
- 浏览 447
- 评论(0)
在写桌面软件时,通常会使用到托盘上的泡泡提示功能,让我们来看看使用python如何实现这个小功能。
一、Linux系统:
在Linux上,实现一个气泡提示非常简单,使用GTK实现的pynotify模块提供了些功能,我的环境是Ubuntu,默认安装此模块,如果没有,可从http://home.gna.org/py-notify/下载源文件编译安装一个。实现代码如下:
#!/usr/bin/python
#coding:utf-8
import pynotify
pynotify.init ("Bubble@Linux")
bubble_notify = pyn ...
- 2012-04-10 22:42
- 浏览 699
- 评论(0)
从今年1月份开始学习python以来,一直写一些很小的脚本文件,也主要是为了练习,今天花了些时间,写了一个还算功能齐全的小程序,并完成单元测试、系统测试、及打包等工作。与任何商业软件开发过程一样,小程序从无都 ...
- 2012-04-07 18:37
- 浏览 605
- 评论(0)
本文讲解如何装python的开发的命令行程序最小化到托盘的方法,并提供菜单操作功能。
上个月使用python实现了一个多功能抓图工具,见《Python:一个多功能的抓图工具开发(附源码)》,此程序为一个命令行程序,windows下运行时会弹出一个cmd窗口,里面什么内容也没有,用户使用时直接按下快捷键进行操作。一直想着优化一下,今天想到是否以通过最小化到托盘,并提供菜单操作和快捷键操作两种方式,这样看起来就有点软件的样子了。
Google了一下,发现了一个方法,具体内容见本文附录部分。
直接上实现后的代码:
1、screenshot.py (此模块提供截图的各种方法,被主程序 ...
- 2012-04-06 01:00
- 浏览 1010
- 评论(0)
很早之前写了两篇通过python程序发送新浪微博的文章(《Python:通过命令行发送新浪微博》和《Python:通过摄像头抓取图像并自动上传至新浪微博》),刚看到有朋友邮件咨询其中有关细节问题,感到文章没有写清楚,故新写一篇,补充开发中的一些细节。
一、注册个新浪微博账号,方法略。
二、在开放平台上注册个应用,网址:http://open.weibo.com/
三、注册后会得到应用的相关信息,包括App Key和App Secret,如下是我注册的一个应用的相关信息:
应用名称:auto_press应用类型:普通应用 - 客户端App Key:230143xxxxApp Secre ...
- 2012-04-05 12:16
- 浏览 737
- 评论(0)