Хорошо, так что я набрал в Google тонну и попробовал решения, перечисленные в stackoverflow ... но ни одно из них не сработало.
Я нахожусь в Анаконде, если это имеет значение.У меня есть файл Python под названием «mainwithai.py».В этом файле я делаю:
from SAI import AI_Player
, который прекрасно работает.SAI.py находится в том же каталоге, что и mainwithai.Теперь в том же каталоге находится файл с именем «getboards.py».
Я попытался импортировать это в SAI, не в mainwithai, таким же образом, и это не удалось.Я попробовал несколько разных способов, и это не помогло, основываясь на разных ответах, которые я видел, вот несколько:
from . import getboards
import getboards
from .. import getboards
from getboards import *
getboards не имеет классов, если это имеет значение (SAI.py имеет класс).Просто набор функций и несколько случайных словарей, которые нужны этим функциям.Это также не имеет значения, если я пытаюсь импортировать в mainwithai или SAI, те же ошибки.
Почему работает SAI, и getboards терпит неудачу?Я вижу, что в папке есть файлы .pyc для mainwithai и sai;мне нужен один из них для getboards тоже?
Я читал кое-что о __init__.py
, но похоже, что это что-то совершенно иное, чем то, что я пытаюсь сделать;Я просто хочу нажать на f5 на mainwithai и заставить его идти, а не делать пакет.
РЕДАКТИРОВАТЬ: Добавление вывода ls
Volume in drive D is YSTORAGE
Volume Serial Number is 60BA-9F15
Directory of D:\AllStuff\writtenworks\StrategoProject
07/27/2018 11:42 AM <DIR> .
07/27/2018 11:42 AM <DIR> ..
01/26/2018 10:14 AM 66 .gitattributes
01/29/2018 11:05 AM 70 .gitignore
11/06/2018 09:17 AM <DIR> __pycache__
12/29/2017 12:26 AM 7,812 AI.py
01/30/2018 11:56 AM <DIR> AI_Mode
01/02/2018 03:22 PM <DIR> backups
12/29/2017 12:42 AM 231 conf.cfg
01/31/2018 09:52 AM <DIR> Database
12/31/2017 09:45 PM 336 empty.txt
12/31/2017 09:28 PM 336 gamestate.txt
11/13/2018 02:57 PM 16,352 getboards.py
12/31/2017 06:27 PM 125,862 gurobi.log
01/26/2018 10:14 AM 35,119 LICENSE
11/13/2018 03:41 PM 34,443 mainwithai.py
01/02/2018 11:11 PM 20,259 mainwithai.pyc
11/08/2018 02:06 PM 16,268 mcts.py
01/24/2018 01:11 PM 0 mintemps.txt
12/29/2017 04:26 PM 1,322 model.ilp
11/08/2018 09:11 AM 8,252,424 neuralstrategoALL.h5
12/31/2017 06:08 PM 6,827 optimization_setup.py
01/29/2018 10:40 AM <DIR> optimizedsetups
01/26/2018 10:14 AM 18 README.md
09/08/2017 03:05 PM <DIR> resources
11/13/2018 03:40 PM 12,747 SAI.py
01/26/2018 01:08 PM 5,666 SAI.pyc
11/06/2018 10:51 AM 8,872 SAIbackup.txt
11/09/2018 11:10 AM 4,226 strategoneural.py
12/31/2017 09:06 PM 337 testtest.txt
12/31/2017 09:00 PM 336 texttext.txt
11/07/2018 04:59 PM 4,992 xmlparse2.py
24 File(s) 8,554,921 bytes
8 Dir(s) 20,052,148,224 bytes free
РЕДАКТИРОВАТЬ 2: здесь все импорта в верхней части всех трех файлов:
mainwithai:
# -*- coding: utf-8 -*-
import configparser
import sys, time, pygame
from pygame.locals import *
import random
import re
from SAI import AI_Player
SAI:
# -*- coding: utf-8 -*-
import random
import numpy as np
import keras
from keras.models import load_model
from copy import copy
import re
getboards:
# -*- coding: utf-8 -*-
import numpy as np
from copy import copy, deepcopy
Я нигде не импортирую, но сверху, это все, что я проверял (я искал файлы какКонечно, конечно), поэтому я не думаю, что это круговая ссылка.Единственное, что у них общего, - это то, что в getboards есть словарь с тем же именем, что и в SAI, но кроме этого я проверил даже все имена функций;Ничего.
РЕДАКТИРОВАТЬ 3: Стек ставить import getboards
в SAI.py
runfile('D:/AllStuff/writtenworks/StrategoProject/SAI.py', wdir='D:/AllStuff/writtenworks/StrategoProject')
Traceback (most recent call last):
File "<ipython-input-895-2df6678e9989>", line 1, in <module>
runfile('D:/AllStuff/writtenworks/StrategoProject/SAI.py', wdir='D:/AllStuff/writtenworks/StrategoProject')
File "C:\Users\ylwaller\AppData\Local\Continuum\anaconda2\envs\sdev3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 678, in runfile
execfile(filename, namespace)
File "C:\Users\ylwaller\AppData\Local\Continuum\anaconda2\envs\sdev3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 106, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "D:/AllStuff/writtenworks/StrategoProject/SAI.py", line 8, in <module>
import getboards
ModuleNotFoundError: No module named 'getboards'