Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 试图让pygame文档代码正常工作_Python_Pygame - Fatal编程技术网

Python 试图让pygame文档代码正常工作

Python 试图让pygame文档代码正常工作,python,pygame,Python,Pygame,我正在浏览pygame 1.9.6的文档,我已经到了第29页,老实说,我不明白为什么我不能让它做它所说的事情(制作一个绿色矩形,用红点和黑色文本定义4个角、4个中点和中心点) 文档代码见第29页: 我觉得他们提供的示例中遗漏了很多内容,所以我对它进行了一点尝试,但已经达到了我只想看看如何让它做它所说的应该做的事情的地步 我的变体: import pygame from pygame.locals import * from pygame.rect import * from pygame.fo

我正在浏览pygame 1.9.6的文档,我已经到了第29页,老实说,我不明白为什么我不能让它做它所说的事情(制作一个绿色矩形,用红点和黑色文本定义4个角、4个中点和中心点)

文档代码见第29页:

我觉得他们提供的示例中遗漏了很多内容,所以我对它进行了一点尝试,但已经达到了我只想看看如何让它做它所说的应该做的事情的地步

我的变体:

import pygame
from pygame.locals import *
from pygame.rect import *
from pygame.font import *

def draw_point(text, pos):
    img = font.render(text, True, Black)
    pygame.draw.circle(screen, RED, pos, 3)
    screen.blit(img, pos)

SIZE = 500, 200
RED = (255, 0, 0)
GRAY = (150, 150, 150)
GREEN = (255, 0, 0)
BLACK = (255, 255, 255)

pygame.init()
screen = pygame.display.set_mode(SIZE)

rect = Rect(50, 40, 250, 80)
##print(f'x={rect.x}, y={rect.y}, w={rect.w}, h={rect.h}')
##print(f'left={rect.left}, top={rect.top}, right={rect.right}, bottom={rect.bottom}')
##print(f'center={rect.center}')

running = True
while running:
    for event in pygame.event.get():
        if event.type == QUIT:
            running = False

    screen.fill(GRAY)
    pygame.draw.rect(screen, GREEN, rect, 4)

    for pt in pts:
        draw_point(pt, eval('rect.'+pt))
        
    pygame.display.flip()

pygame.quit()
非常感谢您的帮助!

请阅读全文

变量
pts
见第25页

pts=(“左上”、“右上”、“左下”、“右下”,
“中上”、“中右”、“中下”、“中左”、“中间”)
变量
font
位于第36页:

font=pygame.font.font(无,24)

完整示例:

导入pygame
从pygame.locals导入*
从pygame.rect导入*
从pygame.font导入*
def牵引点(文本,位置):
img=font.render(文本、真、黑色)
pygame.draw.circle(屏幕,红色,位置3)
屏幕blit(img、pos)
尺寸=500200
红色=(255,0,0)
灰色=(150150150)
绿色=(0,255,0)
黑色=(0,0,0)
pygame.init()
screen=pygame.display.set_模式(大小)
font=pygame.font.font(无,24)
rect=rect(50,40,250,80)
pts=(‘左上’、‘右上’、‘左下’、‘右下’,
“中上”、“中右”、“中下”、“中左”、“中间”)
运行=真
运行时:
对于pygame.event.get()中的事件:
如果event.type==退出:
运行=错误
屏幕填充(灰色)
pygame.draw.rect(屏幕,绿色,rect,4)
对于pts中的pt:
绘制点(点,评估('rect.'+pt))
pygame.display.flip()
pygame.quit()
阅读完整的文档

变量
pts
见第25页

pts=(“左上”、“右上”、“左下”、“右下”,
“中上”、“中右”、“中下”、“中左”、“中间”)
变量
font
位于第36页:

font=pygame.font.font(无,24)

完整示例:

导入pygame
从pygame.locals导入*
从pygame.rect导入*
从pygame.font导入*
def牵引点(文本,位置):
img=font.render(文本、真、黑色)
pygame.draw.circle(屏幕,红色,位置3)
屏幕blit(img、pos)
尺寸=500200
红色=(255,0,0)
灰色=(150150150)
绿色=(0,255,0)
黑色=(0,0,0)
pygame.init()
screen=pygame.display.set_模式(大小)
font=pygame.font.font(无,24)
rect=rect(50,40,250,80)
pts=(‘左上’、‘右上’、‘左下’、‘右下’,
“中上”、“中右”、“中下”、“中左”、“中间”)
运行=真
运行时:
对于pygame.event.get()中的事件:
如果event.type==退出:
运行=错误
屏幕填充(灰色)
pygame.draw.rect(屏幕,绿色,rect,4)
对于pts中的pt:
绘制点(点,评估('rect.'+pt))
pygame.display.flip()
pygame.quit()

“我不能让它按它说的做”它实际上是做什么的?首先,在pts:中有一个pt的循环
,但没有名为
pts
…变量
pts
在文档的第25页。
font
在第36页。非常感谢各位,我知道我的代码到处都是,就像我说的,我已经达到了我想要的位置看看最终的代码会是什么样子。感谢所有的输入!“我不能让它做它所说的”它实际上是做什么的?首先,在pts:
中有一个pt的循环
,但没有名为
pts
…变量
pts
在文档的第25页。
font
在第36页。非常感谢各位,我知道我的代码到处都是,就像我说的,我已经达到了我想要的位置看看最后的代码是什么样子。谢谢所有的输入!@RandomDavisv你是对的,我只是从问题中复制了代码。太完美了,对不起,我想我只是被文档中的布局弄糊涂了!谢谢!@RandomDavisv你是对的,我只是从问题中复制了代码。太完美了,对不起,我想我是just被文件中的布局弄糊涂了!谢谢!