如何将文件导入Python shell?

如何将文件导入Python shell?,python,class,python-2.7,Python,Class,Python 2.7,我制作了一个示例文件,它使用了一个名为Names的类。它有它的初始化功能和一些方法。当我创建类的实例时,它检索实例的名字和姓氏。其他方法问候实例并发出离开消息。我的问题是:如何在不运行模块本身的情况下将此文件导入Python shell 我的文件名是classNames.py,位置是C:\Users\Darian\Desktop\Python\u Programs\Experimenting 下面是我的代码的样子: class Names(object): #first functi

我制作了一个示例文件,它使用了一个名为
Names
的类。它有它的初始化功能和一些方法。当我创建类的实例时,它检索实例的名字和姓氏。其他方法问候实例并发出离开消息。我的问题是:如何在不运行模块本身的情况下将此文件导入Python shell

我的文件名是classNames.py,位置是C:\Users\Darian\Desktop\Python\u Programs\Experimenting

下面是我的代码的样子:

 class Names(object):
     #first function called when creating an instance of the class
     def __init__(self, first_name, last_name):
         self.first_name = first_name
         self.last_name = last_name

      #class method that greets the instance of the class.
      def intro(self):
          print "Hello {} {}!".format(self.first_name, self.last_name)

      def departure(self):
          print "Goodbye {} {}!".format(self.first_name, self.last_name)
但我得到了一个错误:

Traceback (most recent call last): 
  File "<pyshell#0>", line 1, in <module> 
    import classNames.py 
ImportError: No module named classNames.py
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
导入classNames.py
ImportError:没有名为classNames.py的模块

我不清楚您期望的是什么以及您看到的是什么,但是您模块的处理方式与
数学和任何其他模块的工作方式完全相同:

你只需要导入它们。如果这是第一次发生,则获取并执行该文件。运行它之后,名称空间中剩下的所有内容都可以从外部访问

如果您的代码只包含
def
class
语句和赋值,我们不会注意到发生了什么,因为此时没有“真正”发生任何事情。但是您可以使用类、函数和其他名称

然而,如果您在顶层有
print
语句,您将看到它确实被执行了

如果您在Python路径中的任何位置都有这个文件(无论是显式的还是因为它在当前工作目录中),您可以像这样使用它

import classNames
并使用其内容,如

n = classNames.Names("John", "Doe")
或者你会

from classNames import Names
n = Names("John", "Doe")

不要执行
导入classNames.py
,因为这会尝试从运行导入(第一次)的包
classNames/
中导入模块
py.py
。导入(第一次)是什么意思“在不运行模块的情况下导入?例如,当我运行shell时,我可以导入数学库,而不必打开代码并运行它。有什么方法可以用我的文件做到这一点吗?我以前在同一个目录中创建了一个新文件,并在同一个文件夹中导入了不同的文件,但那是在Python空闲中@请编辑问题以包含(代码格式)错误消息。简而言之,Python不知道在哪里查找您的文件;参见例如和