ПОМОГИТЕ!!! СРОЧНО!

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Что я делаю не правильно что мой код дает результат но и выдает ошибку? помогите пж!!
Python:
title = "User name:"
count = 1
name = "Vasya"
Lastname = "Mi Mi"
email = "Vasya.Mimi@gmail.com"

columns = ('Фио', 'Емейл', 'Город', 'Тариф', 'Дата регистрации')

data = (["Вася пупкин", "vasya.py@gmail.com", "Москва","Профи+","07.13.2020"],["Джордж Ваш", "vah@gmail.com", "Питер","Новичoк","03.26.2022"],["Ваня Котлета", "meat@gmail.com","Тула","Профи","09.10.2019"])

test = {}
test["vasya"] = 1
test["max"] = 2

print(test["vasya"])

del test["vasya"]

print(test["vasya"])

1643793805003.jpeg

помогите((!
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
1) попробуй открыть папку где установлен Python набрать вместо пути cmd, после нажать Enter
1644340150310.png
в открывшейся командной строке выполни
Код:
pip -V
Если скажет что такой команды не существует, значит точно надо устанавливать, попробуй по этой инструкции

Еще можешь попробовать скачать get-pip.py и запустить, это универсальный установщик pip для Windows и Mac
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
а как ты python ставила? он по умолчанию pip ставит
да вот не понятно( вроде как разобралась теперь надо pygame установить, но вот с этим то и проблемы. через базовую команду pip install pygame выдает такую ошибку тип она уже найдена. но когда делаю код игры змейки, то там должна уже как быть змейка и яблоко. а у меня черный экран... завтра уже др моего учителя по питону, мы с 1 из его ученика сработались и решили на др игру создать. так только с этим pip and pygame провозились помогите пж..

Python:
~/Zmieiaka-228$ pip install pygame
Looking in indexes: https://package-proxy.replit.com/pypi/simple/
Requirement already satisfied: pygame in ./venv/lib/python3.8/site-packages (2.1.2)

вот что он выводит. но когда я ввожу код то там темный экран
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
да вот не понятно( вроде как разобралась теперь надо pygame установить, но вот с этим то и проблемы. через базовую команду pip install pygame выдает такую ошибку тип она уже найдена. но когда делаю код игры змейки, то там должна уже как быть змейка и яблоко. а у меня черный экран... завтра уже др моего учителя по питону, мы с 1 из его ученика сработались и решили на др игру создать. так только с этим pip and pygame провозились помогите пж..

Python:
~/Zmieiaka-228$ pip install pygame
Looking in indexes: https://package-proxy.replit.com/pypi/simple/
Requirement already satisfied: pygame in ./venv/lib/python3.8/site-packages (2.1.2)

вот что он выводит. но когда я ввожу код то там темный экран
Но если при запуске кода темный экран, а в терминале нет ошибок, значит скорее всего ошибка в коде, можешь скинуть код, посмотрим
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Python:
import pygame
import random

BG_COLOR = (255, 255, 255)
SNAKE_COLOR = (0, 117, 128)
CANDY_COLOR = (254, 208, 73)
SQUARE_SIZE = 30
HEIGHT = 600
WIDTH = 1000

pygame.init()
screen = pygame.display.set_mode((WIDTH, HEIGHT))

vx = SQUARE_SIZE
vy = 0
x = WIDTH // 2
y = HEIGHT // 2

my_font = pygame.font.SysFont("Consolas", 30)
you_lost = my_font.render("You lost", True, (255, 0, 0))


def create_candy():
    candy_x = random.randint(70, WIDTH - 70)
    candy_y = random.randint(70, HEIGHT - 70)
    return candy_x, candy_y


candy_x, candy_y = create_candy()


def change_direction(vx, vy, key):
    if key == pygame.K_LEFT:
        if vx == SQUARE_SIZE:
            vx = 0
            vy = -SQUARE_SIZE
        elif vx == -SQUARE_SIZE:
            vx = 0
            vy = SQUARE_SIZE
        elif vy == SQUARE_SIZE:
            vy = 0
            vx = SQUARE_SIZE
        else:
            vy = 0
            vx = -SQUARE_SIZE
    if key == pygame.K_RIGHT:
        if vx == SQUARE_SIZE:
            vx = 0
            vy = SQUARE_SIZE
        elif vx == -SQUARE_SIZE:
            vx = 0
            vy = -SQUARE_SIZE
        elif vy == SQUARE_SIZE:
            vy = 0
            vx = -SQUARE_SIZE
        else:
            vy = 0
            vx = SQUARE_SIZE
    return vx, vy


game_over = False
snake = [(x, y)]

while True:

    for e in pygame.event.get():
        if e.type == pygame.QUIT:
            exit()
        if e.type == pygame.KEYDOWN:
            vx, vy = change_direction(vx, vy, e.key)
    screen.fill(BG_COLOR)

    if not game_over:
        for x, y in snake:
            pygame.draw.rect(screen, SNAKE_COLOR, (x, y, SQUARE_SIZE - 1, SQUARE_SIZE - 1))
        pygame.draw.circle(screen, CANDY_COLOR, (candy_x + SQUARE_SIZE // 2, candy_y + SQUARE_SIZE // 2),
                           SQUARE_SIZE // 2)
        snake.insert(0, (snake[0][0] + vx, snake[0][1] + vy))
        x, y = snake[0]
        if x < 0 or y < 0 or x + SQUARE_SIZE > WIDTH or y + SQUARE_SIZE > HEIGHT:import random

BG_COLOR=(255,255,255)
SNAKE_COLOR=(0,117,128)
CANDY_COLOR=(254,208,73)
SQUARE_SIZE=30
HEIGHT=600
WIDTH=1000

pygame.init()
screen=pygame.display.set_mode((WIDTH,HEIGHT))

vx=SQUARE_SIZE
vy=0
x=WIDTH//2
y=HEIGHT//2

my_font=pygame.font.SysFont("Consolas",30)
you_lost=my_font.render("You lost",True,(255,0,0))

def create_candy():
        candy_x=random.randint(70,WIDTH-70)
        candy_y=random.randint(70,HEIGHT-70)
        return candy_x, candy_y

candy_x,candy_y=create_candy()

def change_direction(vx,vy,key):
    if key==pygame.K_LEFT:
        if vx==SQUARE_SIZE:
            vx=0
            vy=-SQUARE_SIZE
        elif vx== -SQUARE_SIZE:
            vx=0
            vy=SQUARE_SIZE
        elif vy==SQUARE_SIZE:
            vy=0
            vx=SQUARE_SIZE
        else:
            vy=0
            vx=-SQUARE_SIZE
    if key==pygame.K_RIGHT:
        if vx==SQUARE_SIZE:
            vx=0
            vy=SQUARE_SIZE
        elif vx==-SQUARE_SIZE:
            vx=0
            vy=-SQUARE_SIZE
        elif vy==SQUARE_SIZE:
            vy=0
            vx=-SQUARE_SIZE
        else:
            vy=0
            vx=SQUARE_SIZE
    return vx,vy

game_over=False
snake=[(x,y)]





while True:

    for e in pygame.event.get():
        if e.type==pygame.QUIT:
            exit()
        if e.type==pygame.KEYDOWN:
            vx,vy=change_direction(vx,vy,e.key)
    screen.fill(BG_COLOR)

    if not game_over:
        for x,y in snake:
            pygame.draw.rect(screen,SNAKE_COLOR,(x,y,SQUARE_SIZE-1,SQUARE_SIZE-1))
        pygame.draw.circle(screen, CANDY_COLOR,(candy_x+SQUARE_SIZE//2,candy_y+SQUARE_SIZE//2),SQUARE_SIZE//2)
        snake.insert(0,(snake[0][0]+vx,snake[0][1]+vy))
        x,y=snake[0]
        if x<0 or y<0 or x + SQUARE_SIZE>WIDTH or y+SQUARE_SIZE>HEIGHT:
            game_over=True

        head_rect=pygame.Rect(x,y,SQUARE_SIZE,SQUARE_SIZE)
        candy_rect=pygame.Rect(candy_x,candy_y,SQUARE_SIZE,SQUARE_SIZE)
        if head_rect.colliderect(candy_rect):
            candy_x,candy_y=create_candy()
        else:
            snake.pop()

        for x1,y1 in snake[1:]:
            snake_rect=pygame.Rect(x1,y1,SQUARE_SIZE,SQUARE_SIZE)
            if snake_rect.colliderect(head_rect):
                game_over=True
else:
    screen.blit(you_lost,(WIDTH//2-100,HEIGHT//2-30))

    pygame.display.flip()
    pygame.display.update ()
    pygame.time.delay(250)
    True

    head_rect = pygame.Rect(x, y, SQUARE_SIZE, SQUARE_SIZE)
    candy_rect = pygame.Rect(candy_x, candy_y, SQUARE_SIZE, SQUARE_SIZE)
    if head_rect.colliderect(candy_rect):
        candy_x, candy_y = create_candy()
    else:
        snake.pop()

        for x1, y1 in snake[1:]:
            snake_rect = pygame.Rect(x1, y1, SQUARE_SIZE, SQUARE_SIZE)
            if snake_rect.colliderect(head_rect):
                game_over = True
            else:
                screen.blit(you_lost, (WIDTH // 2 - 100, HEIGHT // 2 - 30))

    pygame.display.flip()
    pygame.display.update()
    pygame.time.delay(250)
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
вот еще один но он еще не доделан.

Python:
import pygame
from random import randrange

RES = 800
SIZE = 50

x, y = randrange(0, RES, SIZE), randrange(0, RES, SIZE)
apple = randrange(0, RES, SIZE), randrange(0, RES, SIZE)
length = 1
snake = [(x, y)]
dx, dy = 0, 0
fps = 5

pygame.init()
sc = pygame.display.set_mode([RES, RES])
clock = pygame.time.Clock()

while True:
  sc.fill(pygame.Color('black'))
  # рисование змеи
  [(pygame.draw.rect(sc, pygame.Color('green'), (i, j, SIZE, SIZE))) for i, j in snake]
  pygame.draw.rect(sc, pygame.Color('red'), (*apple, SIZE, SIZE))
# движение змеи
x += dx * SIZE
y += dy * SIZE
snake.append((x, y))
snake = snake[-length:]
#ест яблоко
if snake[-1] == apple:
    apple = randrange(0, RES, SIZE), randrange(0, RES, SIZE)
    length += 1
    fps += 1


pygame.display.flip()
clock.tick(fps)

for event in pygame.event.get():
    if event.type == pygame.QUIT:
        exit()

# контроль

key = pygame.key.get_pressed()
if key[pygame.K_w]:
    dx, dy = 0, -1
if key[pygame.K_s]:
    dx, dy = 0, 1
if key[pygame.K_a]:
    dx, dy = -1, 0
if key[pygame.K_d]:
    dx, dy = 1, 0
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
Ну первый код и у меня не работает, так что с pygame у тебя все в порядке)

Тут дело в том, что твой первый код, это смесь двух кодов, оба не рабочие
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Ну первый код и у меня не работает, так что с pygame у тебя все в порядке)

Тут дело в том, что твой первый код, это смесь двух кодов, оба не рабочие
как так то? я же все по видео делала, и у него работает а у меня нет
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
Может ты не правильно код вставила? А то в нем 2 цикла while True, и почти все переменные и функции объявляются дважды
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Может ты не правильно код вставила? А то в нем 2 цикла while True, и почти все переменные и функции объявляются дважды
да вроде бы все правильно.. странно. а если я сейчас 2 код попробую дописать и отправлю вам, то вы поможете?
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
Постараюсь помочь
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Постараюсь помочь
спасибо! буду дописывать код
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
так ну вот и я)) код готов работает!! только вопрос.. как добавить на экран игры свое фото? ну именно не из инета а свое? и можно прям пошагово как назвать и какой код? просто все готово а фото не как не вставляться..


Python:
import pygame
from random import randrange

RES = 800
SIZE = 50

x, y = randrange(SIZE, RES - SIZE, SIZE), randrange(SIZE, RES - SIZE, SIZE)
apple = randrange(SIZE, RES - SIZE, SIZE), randrange(SIZE, RES - SIZE, SIZE)
length = 1
snake = [(x, y)]
dx, dy = 0, 0
fps = 60
dirs = {'W': True, 'S': True, 'A': True, 'D': True, }
score = 0
speed_count, snake_speed = 0, 10

pygame.init()
surface = pygame.display.set_mode([RES, RES])
clock = pygame.time.Clock()
font_score = pygame.font.SysFont('Arial', 26, bold=True)
font_end = pygame.font.SysFont('Arial', 66, bold=True)


def close_game():
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()


while True:
    surface.fill(pygame.Color('black'))
    # drawing snake, apple
    [pygame.draw.rect(surface, pygame.Color('green'), (i, j, SIZE - 1, SIZE - 1)) for i, j in snake]
    pygame.draw.rect(surface, pygame.Color('red'), (*apple, SIZE, SIZE))
    # show score
    render_score = font_score.render(f'SCORE: {score}', 1, pygame.Color('orange'))
    surface.blit(render_score, (5, 5))
    # snake movement
    speed_count += 1
    if not speed_count % snake_speed:
        x += dx * SIZE
        y += dy * SIZE
        snake.append((x, y))
        snake = snake[-length:]
    # eating food
    if snake[-1] == apple:
        apple = randrange(SIZE, RES - SIZE, SIZE), randrange(SIZE, RES - SIZE, SIZE)
        length += 1
        score += 1
        snake_speed -= 1
        snake_speed = max(snake_speed, 4)
    # game over
    if x < 0 or x > RES - SIZE or y < 0 or y > RES - SIZE or len(snake) != len(set(snake)):
        while True:
            render_end = font_end.render('GAME OVER', 1, pygame.Color('orange'))
            surface.blit(render_end, (RES // 2 - 200, RES // 3))
            pygame.display.flip()
            close_game()

    pygame.display.flip()
    clock.tick(fps)
    close_game()
    # controls
    key = pygame.key.get_pressed()
    if key[pygame.K_w]:
        if dirs['W']:
            dx, dy = 0, -1
            dirs = {'W': True, 'S': False, 'A': True, 'D': True, }
    elif key[pygame.K_s]:
        if dirs['S']:
            dx, dy = 0, 1
            dirs = {'W': False, 'S': True, 'A': True, 'D': True, }
    elif key[pygame.K_a]:
        if dirs['A']:
            dx, dy = -1, 0
            dirs = {'W': True, 'S': True, 'A': True, 'D': False, }
    elif key[pygame.K_d]:
        if dirs['D']:
            dx, dy = 1, 0
            dirs = {'W': True, 'S': True, 'A': False, 'D': True, }
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
1) Положи фото в ту же папку, где и программа
2) В начало кода добавь
Python:
img = pygame.image.load("image.png")  # Путь к картинке
img_rect = img.get_rect(left=0, top=0) # left, top - отступы справа и сверху
3) В момент когда хочешь показать картинку, добавь
Python:
surface.blit(img, img_rect)
pygame.display.update()
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
1) Положи фото в ту же папку, где и программа
2) В начало кода добавь
Python:
img = pygame.image.load("image.png")  # Путь к картинке
[/QUOTE]
а мне туда свое имя файла вводить?
[QUOTE="Vershitel_sudeb, post: 12169, member: 3731"]
img_rect = img.get_rect(left=0, top=0) # left, top - отступы справа и сверху
[/QUOTE]
тут не чего не меняю?
[QUOTE="Vershitel_sudeb, post: 12169, member: 3731"]
3) В момент когда хочешь показать картинку, добавь
Python:
surface.blit(img, img_rect)
pygame.display.update()
спасибо попробую!
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
спасибо попробую!
img = pygame.image.load("image.png") а мне сюда что то вводить? например имя файла?
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
путь к файлу, но если как я сказал файл (картинка) в той же папке, что и игра, то просто название картинки (с расширением)
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
путь к файлу, но если как я сказал файл (картинка) в той же папке, что и игра, то просто название картинки (с расширением)
а у игры есть папка?
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
а у игры есть папка?
как она называется?
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
973
220
43
21
Москва
под игрой я имел ввиду твою программу, точнее файл game.py (ну или как ты его назвала), а под ее папкой, папку в которой лежит этот файл
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
,.png
 

Форум IT Специалистов