过7游戏用python怎么写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了过7游戏用python怎么写相关的知识,希望对你有一定的参考价值。

代码为:

import re

def xiny(x, y):
    return bool(re.findall(x, y))

i = 1
while i <= 100:
    if i % 7 == 0 or xiny("7", str(i)) == True:
        print("过", end=",")
    else:
        print(i, end=",")
    i = i + 1

输出结果:

1,2,3,4,5,6,过,8,9,10,11,12,13,过,15,16,过,18,19,20,过,22,23,24,25,26,过,过,29,30,31,32,33,34,过,36,过,38,39,40,41,过,43,44,45,46,过,48,过,50,51,52,53,54,55,过,过,58,59,60,61,62,过,64,65,66,过,68,69,过,过,过,过,过,过,过,过,过,过,80,81,82,83,过,85,86,过,88,89,90,过,92,93,94,95,96,过,过,99,100,

参考技术A #输入任意的一个数字的范围之内,所有的7的倍数和包含有数字7的数字
i = 1
datemax = input("pls input a value range")
data = int(datemax)
while (i <= data):
b = i % 7
e = str(i)
if (b == 0):
print("7的倍数")
elif e.find("7") != -1 :
print ("含有7")
else :
print (i)
i += 1
参考技术B 哥虽然不帅但不是你轻而易举就
有些事你把它藏到心里也
当流血的夜晚得到包扎
参考技术C 原来郑和船队的高级武职人
雪花并不大像些小粉虱路灯
参考技术D 拉着你的手和你去天涯海角
最新周末祝福短信大全周祝

用Python和Pygame写游戏-从入门到精通

OK,到该讲显示的时候了。没人可以否定好的画面是一款游戏吸引人最直接最诱人的因素,虽说滥画面高游戏度的作品也有,但优秀的画面无疑是一张过硬的通行证,可以让你争取到更多的机会。
其实上两回也已经打开过显示了,不过没有特别说明而已,pygame.display.set_mode(xxx)就是创建一个游戏窗口,也就是显示的意思。

全屏显示

我们在第一个程序里使用了如下的语句

screen = pygame.display.set_mode((640, 480), 0, 32)

也讲述了各个参数的意思,当我们把第二个参数设置为FULLSCREEN时,就能得到一个全屏窗口了

screen = pygame.display.set_mode((640, 480), FULLSCREEN, 32)

注意:如果你的程序有什么问题,很可能进入了全屏模式就不太容易退出来了,所以最好先用窗口模式调试好,再改为全屏模式。

在全屏模式下,显卡可能就切换了一种模式,你可以用如下代码获得您的机器支持的显示模式:

>>> import pygame
>>> pygame.init()
>>> pygame.display.list_modes()

看一下一个实例:

background_image_filename = 'sushiplate.jpg'
 
import pygame
from pygame.locals import *
from sys import exit
 
pygame.init()
screen = pygame.display.set_mode((640, 480), 0, 32)
background = pygame.image.load(background_image_filename).convert()
 
Fullscreen = False
 
while True:
 
    for event in pygame.event.get():
        if event.type == QUIT:
            exit()
    if event.type == KEYDOWN:
        if event.key == K_f:
            Fullscreen = not Fullscreen
            if Fullscreen:
                screen = pygame.display.set_mode((640, 480), FULLSCREEN, 32)
            else:
                screen = pygame.display.set_mode((640, 480), 0, 32)
 
    screen.blit(background, (0,0))
    pygame.display.update()

运行这个程序,默认还是窗口的,按“f ”,显示模式会在窗口和全屏之间切换。程序也没有什么难度,应该都能看明白。

可变尺寸的显示

虽然一般的程序窗口都能拖边框来改变大小,pygame的默认显示窗口是不行的,而事实上,很多游戏确实也不能改变显示窗口的大小,我们可以使用一个参数来改变这个默认行为。

background_image_filename = 'sushiplate.jpg'
 
import pygame
from pygame.locals import *
from sys import exit
 
SCREEN_SIZE = (640, 480)
 
pygame.init()
screen = pygame.display.set_mode(SCREEN_SIZE, RESIZABLE, 32)
 
background = pygame.image.load(background_image_filename).convert()
 
while True:
 
    event = pygame.event.wait()
    if event.type == QUIT:
        exit()
    if event.type == VIDEORESIZE:
        SCREEN_SIZE = event.size
        screen = pygame.display.set_mode(SCREEN_SIZE, RESIZABLE, 32)
        pygame.display.set_caption("Window resized to "+str(event.size))
 
    screen_width, screen_height = SCREEN_SIZE
    # 这里需要重新填满窗口
    for y in range(0, screen_height, background.get_height()):
        for x in range(0, screen_width, background.get_width()):
            screen.blit(background, (x, y))
 
    pygame.display.update()

当你更改大小的时候,后端控制台会显示出新的尺寸,这里我们学习到一个新的事件VIDEORESIZE,它包含如下内容:

  • size — 一个二维元组,值为更改后的窗口尺寸,size[0]为宽,size[1]为高
  • w — 宽
  • h — 一目了然,高;之所以多出这两个,无非是为了方便

注意:在我的Windows 7 64bit上运行的时候,一改变窗口大小就非法退出;在Linux机器上很正常,应该是系统的兼容性问题(Pygame还只支持32位),不过想来平时都不会更改游戏窗口大小,问题不大。

至于无边框的窗口等,看一看本教程的第一篇就能知道了,不再赘述。

其他、复合模式

我们还有一些其他的显示模式,但未必所有的操作系统都支持(放心windows、各种比较流行的Linux发行版都是没问题的),一般来说窗口就用0全屏就用FULLSCREEN,这两个总是OK的。

如果你想创建一个硬件显示(surface会存放在显存里,从而有着更高的速度),你必须和全屏一起使用:

screen = pygame.display.set_mode(SCREEN_SIZE, HWSURFACE | FULLSCREEN, 32)

当然你完全可以把双缓冲(更快)DOUBLEBUF也加上,这就是一个很棒的游戏显示了,不过记得你要使用pygame.display.flip()来刷新显示。pygame.display.update()是将数据画到前面显示,而这个是交替显示的意思。

稍微说一下双缓冲的意思,可以做一个比喻:我的任务就是出黑板报,如果只有一块黑板,那我得不停的写,全部写完了稍微Show一下就要擦掉重写,这样一来别人看的基本都是我在写黑板报的过程,看到的都是不完整的黑板报;如果我有两块黑板,那么可以挂一块给别人看,我自己在底下写另一块,写好了把原来的换下来换上新的,这样一来别人基本总是看到完整的内容了。双缓冲就是这样维护两个显示区域,快速的往屏幕上换内容,而不是每次都慢慢地重画。
还有OPENGL模式,这是一个得到广泛应用的3D加速显示模式。不过一旦使用了这个模式,pygame中的2D图像函数就不能用了,我们会在以后讲详细的内容。

这次的东西不是很多,基本就是讲了一个显示参数,如果基础比较好,一看就明白了。不过还是建议实际的输入写一下巩固认识。下一回讲字体模块(游戏没图可以,没字咋整?)~尽请期待

>> 用Python和Pygame写游戏-从入门到精通(4)还没写

以上是关于过7游戏用python怎么写的主要内容,如果未能解决你的问题,请参考以下文章

Python入门学习:一步步教你怎么用Python写贪吃蛇游戏

用Python写一个简单的小游戏

游戏用英语怎么写

如何用python写ios的游戏脚本?

用Python和Pygame写游戏-从入门到精通

用Python和Pygame写游戏-从入门到精通