元豪 发表于 2022-11-16 21:18:48

Pygame问题(已解决)

本帖最后由 元豪 于 2023-2-11 18:04 编辑

问题已解决,原来是我自己的问题...
管理员删除此贴吧...{:10_262:}

元豪 发表于 2022-11-16 21:19:21

@hveagle @zhangjinxuan @Twilight6 @人造人 @python爱好者.
求助求助求助求助求助求助求助求助{:10_266:}{:10_266:}

asky533 发表于 2022-11-16 21:34:13

我这边运行时没报错呀
一切都进行得很顺利 ->

hveagle 发表于 2022-11-16 21:38:31

爬虫别找我……

阿奇_o 发表于 2022-11-16 22:06:52

本帖最后由 阿奇_o 于 2022-11-16 22:10 编辑

疑惑:
1. 代码是不是没给全?self.black 是什么?前面也没见定义有?是拼写错误,应该是 self.block ?
2. 为什么要定义一堆只有一个类属性的类?(xx_Block)是否可以改写一下?
3. 重复一堆信息冗余的、刺眼的“为什么”,对你解决问题有什么好处吗?

人造人 发表于 2022-11-16 22:26:48

请先学会提问题,看看这个吧,对你有帮助的
https://github.com/ruby-china/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md

zhangjinxuan 发表于 2022-11-17 07:47:43

我……这一次我真的不会了{:10_266:}

tommyyu 发表于 2022-11-17 08:18:00

看不出来有继承{:10_250:}

Twilight6 发表于 2022-11-17 10:40:32



没看到继承

类默认就是继承 Object 类,你就算不写 object 也是继承这个类

hrpzcf 发表于 2022-11-17 12:00:21

由于你的代码没有有效信息,也不能运行,我大概猜测了你的意图,修改了一下代码

blocks.py
import random
from copy import deepcopy

# I型
Ilist = [[(1, 0), (1, 1), (1, 2), (1, 3)], [(0, 2), (1, 2), (2, 2), (3, 2)]]
# O型
Olist = [[(1, 1), (1, 2), (2, 1), (2, 2)]]
# Z型
Zlist = [[(2, 0), (2, 1), (1, 1), (1, 2)], [(0, 1), (1, 1), (1, 2), (2, 2)]]
# S型
Slist = [[(1, 0), (1, 1), (2, 1), (2, 2)], [(0, 2), (1, 2), (1, 1), (2, 1)]]
# L型
Llist = [
    [(1, 0), (1, 1), (1, 2), (2, 2)],
    [(0, 1), (1, 1), (2, 1), (0, 2)],
    [(0, 0), (1, 0), (1, 1), (1, 2)],
    [(0, 1), (1, 1), (2, 1), (2, 0)],
]
# J型
Jlist = [
    [(1, 0), (1, 1), (1, 2), (0, 2)],
    [(0, 1), (1, 1), (2, 1), (0, 0)],
    [(2, 0), (1, 0), (1, 1), (1, 2)],
    [(0, 1), (1, 1), (2, 1), (2, 2)],
]
# T型
Tlist = [
    [(0, 1), (1, 1), (2, 1), (1, 2)],
    [(1, 0), (1, 1), (1, 2), (0, 1)],
    [(0, 1), (1, 1), (2, 1), (1, 0)],
    [(1, 0), (1, 1), (1, 2), (2, 1)],
]


class Block:
    shapeList =

    def __init__(self):
      self.randomShape()

    def randomShape(self):
      self.rectList = deepcopy(random.choice(self.shapeList))


main.py
import pygame

from blocks import *


class MainScreen(Block):
    def __init__(self):
      super().__init__()
      self.screen = pygame.display.set_mode((1920,1080))

    def draw(self):
      self.screen.fill((50, 50, 50))
      self.randomShape() # 随机选择形状
      for row in self.rectList:
            for x, y in row:
                print(x, y)

ms = MainScreen()
ms.draw()

元豪 发表于 2022-11-17 18:08:02

阿奇_o 发表于 2022-11-16 22:06
疑惑:
1. 代码是不是没给全?self.black 是什么?前面也没见定义有?是拼写错误,应该是 self.bloc ...

2. 代码没打全。。。

元豪 发表于 2022-11-17 18:09:58

Twilight6 发表于 2022-11-17 10:40
没看到继承

类默认就是继承 Object 类,你就算不写 object 也是继承这个类

{:10_286:}
昨天太急,排版不行,再看看吧。。。

hrpzcf 发表于 2022-11-17 22:27:09

真是浪费精力,好好回答问题了居然行不行也不回复一下,直接编辑让管理删帖了

元豪 发表于 2022-11-18 18:01:30

hrpzcf 发表于 2022-11-17 22:27
真是浪费精力,好好回答问题了居然行不行也不回复一下,直接编辑让管理删帖了

可是确实没有改代码的必要了啊...
如果浪费了你的精力,我在这里给你道歉了
页: [1]
查看完整版本: Pygame问题(已解决)