Задать вопрос
@Arkamantic

Python не может найти путь к файлу?

Python не может найти файл "yellow_star.png" по указанному пути в моем скрипте.
Вот код: "import pygame
import sys

# Инициализация Pygame
pygame.init()

# Размеры экрана
screen_width = 800
screen_height = 600

# Цвета
gray = (192, 192, 192)
blue = (0, 0, 255)
red = (255, 0, 0)
yellow = (255, 255, 0)

# Создание окна
screen = pygame.display.set_mode((screen_width, screen_height))
pygame.display.set_caption("Игровая сцена")

# Загрузка изображения звездочки
star_img = pygame.image.load('C:\\Users\\desir\\art\\yellow_star.png')
star_img = pygame.transform.scale(star_img, (30, 30)) # Изменение размера изображения

# Начальные координаты круга
circle_x = 400
circle_y = 300

# Скорость перемещения круга
circle_speed = 5

# Начальные координаты звездочек
stars = [
(100, 100),
(200, 200),
(300, 300),
(400, 400),
(500, 500)
]

# Счетчик собранных звездочек
score = 0

# Создание таймера
clock = pygame.time.Clock()

# Основной цикл игры
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()

# Получение состояния клавиш
keys = pygame.key.get_pressed()
circle_x += (keys[pygame.K_RIGHT] - keys[pygame.K_LEFT]) * circle_speed
circle_y += (keys[pygame.K_DOWN] - keys[pygame.K_UP]) * circle_speed

# Проверка столкновения круга с звездочками
for star in stars:
star_rect = pygame.Rect(star[0], star[1], 30, 30)
circle_rect = pygame.Rect(circle_x, circle_y, 50, 50)
if circle_rect.colliderect(star_rect):
stars.remove(star)
score += 1

# Очистка экрана
screen.fill(gray)

# Отрисовка круга
pygame.draw.circle(screen, blue, (int(circle_x), int(circle_y)), 25)
pygame.draw.circle(screen, red, (int(circle_x), int(circle_y)), 25, 2)

# Отрисовка звездочек
for star in stars:
screen.blit(star_img, star)

# Отрисовка счета
font = pygame.font.Font(None, 36)
score_text = font.render("Счет: {}".format(score), True, red)
screen.blit(score_text, (10, 10))

# Обновление экрана
pygame.display.flip()

# Установка частоты обновления экрана
clock.tick(60)".
В этой строке "star_img = pygame.image.load('C:\\Users\\desir\\art\\yellow_star.png')" я ставил одинарные кавычки, ставил по одному обратному слэшу в пути. Добавлял "r" перед диском "C" в пути. В чем проблема?
  • Вопрос задан
  • 448 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
Например его там нет.
Зачем приводить в вопросе всю простыню кода, если можно было попробовать только одну строчку, которая пытается открыть этот файл? Если она не сработает, значит есть проблема, если сработает, то проблема не в файле.
А у вас ни стек-трейса, ни листинга каталога с указанным файлом неприведено, да вы даже код нормально оформить не сообразили! Это хамство, я считаю.
Ответ написан
Комментировать
@Arkamantic Автор вопроса
У меня файл с кодом находиться именно в том пути, который я указал в коде. Я до этого писал без добавления изображения и у меня все работало. И вообще я просил советы, а не упреки. Форум же для этого, чтобы ОБЪЯСНЯТЬ!!!
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы