导入错误:没有命名的模块

时间:2015-08-04 20:01:14

标签: python

嗨,我非常喜欢编程,我正在开发我的第一个程序。我一直在书中跟随,我决定停下来测试一个功能。该函数位于名为myPythonFunctions.py的文件中。然后,我创建了一个名为untitled.py的新文件,并将其放在与myPythonFunctions.py相同的文件夹中。

untitled.py我有以下代码:

import myPythonFunctions as m
m.generateQuestion()

很简单,但是当我尝试运行它时,我得到Import Error: no module named myPythonFunctions

我不明白,文件夹中有一个名为myPythonFunctions的文件。发生了什么事?

如果您需要,请输入m.generateQuestion()

的代码
def generateQuestion():

    operandList = [0,0,0,0,0,]
    operatorList = ['', '', '', '', '']
    operatorDict = [1:'+', 2:'-', 3:'*', 4:'**']

    for index in range(0,5):
        operandList[index] = randint(1,9)

    for index in range(0,4):
        if index > 0 and operatorList[index-1] !='**':

            operator = operatorDict[randint(1,4)]
        else:

            operator = operatorDict[randint(1,3)]

    operatorList[index] = operator
    questionString = str(operandList[0])

    for index in range(1,5):
        questionString = questionString + OperatorList[index-1] + str[operandList[index]

    result = eval(questionString)
    questionString.replace("**","^")
    print('\n' + questionString)
    userAnswer=input('Answer: ')
    while true:
        try:
            if int(userAnswer) == result:
                print('Correct!')
                return 1
            else:
                print('Sorry, the correct answer is', result)
                return 0
        except Exception as e:
                print("That wasn't a number")
                userAnswer = input('Answer: ')

编辑:我现在收到此错误

Traceback (most recent call last):
  File "/Users/Brad/Desktop/Python/Untitled.py", line 1, in <module>
    import myPythonFunctions as m
  File "/Users/Brad/Desktop/Python/myPythonFunctions.py", line 33
    operatorDict = [1:'+', 2:'-', 3:'*', 4:'**']
                     ^
SyntaxError: invalid syntax

2 个答案:

答案 0 :(得分:0)

你得到的语法错误,是因为你试图将字典定义为一个列表,所以解释器会引发错误,因为它不知道如何处理它。

要定义字典,您需要使用{}而不是[]

答案 1 :(得分:-2)

---编辑2

你的字典实现错了,你真的从某个地方复制了这段代码吗?

operatorDict = {1:'+', 2:'-', 3:'*', 4:'**'}

您的代码被拼错了

----编辑

myPythonFunctions 上的代码非常糟糕。

Python 需要正确的识别工作,请仔细检查此步骤

我建议你检查一下你的结构:

我现在就这样做了

/somefolder
--this.py
--functions.py
/

内容 --this.py

import functions as f

print f.hello()

- functions.py

def hello():
    return 'It worked'

在您的环境中尝试此结构:D

然后运行:

python this.py