Вероятно, pygame.mixer
не работает с import pygame
, поскольку в pygame
package отсутствует атрибут mixer
. Если атрибут отсутствует, автозаполнение не будет отображать его.
Когда вы импортируете пакет, Python не рекурсивно импортирует подпакеты и модули, если он явно не назначен внутри файла "__init__.py" внутри пакета.
Вот почему import pygame.mixer as mixer
работает, потому что вы импортируете pygame
пакет и mixer
модуль (?), Который доступен через локальное имя mixer
. Однако при таком импорте у вас нет pygame
доступного в локальной области.
Аналогичная ситуация, когда вы просто import pygame.mixer
. pygame
доступно, но на mixer
должна ссылаться pygame.mixer
.
В обоих случаях pygame
пакет и pygame.mixer
модуль (?) Выполняются.
Вы также можете использовать from pygame import mixer
вместо import pygame.mixer as mixer
или from pygame import mixer as module
, если хотите переименовать.