喵叔 发表于 2018-3-19 11:35:22

导入自己写的模块报错,找不到名字

写了一个小模块,能够正常调用
diedai.py
__author__='ye'
import sys

def test():
    args=sys.argv
    if(len(args))==1:
      print("hello world")
    elif len(args)==2:
      print("hello,%s"%args)
    else:
      print('too many arguments')
if __name__=='__main__':
    test()

在DOS下导入模块,无误
但是使用diedai查不到这个名字
理论上应该显示<module 'diedai'>
错误如图:

南城顾她 发表于 2018-3-19 12:28:23

本帖最后由 南城顾她 于 2018-3-19 12:29 编辑

如果不是同一个文件先添加path路径你的py文件放的位置
sys.path.append(文件路径)
import diedai
如果是在同一个文件夹下直接inportpy文件名

喵叔 发表于 2018-3-19 13:38:43

南城顾她 发表于 2018-3-19 12:28
如果不是同一个文件先添加path路径你的py文件放的位置
sys.path.append(文件路径)
import diedai


你看我图片上已经导入成功了,但是调用显示diedai 未定义

冬雪雪冬 发表于 2018-3-19 14:05:53

图中没有看到导入模块的操作。

喵叔 发表于 2018-3-19 14:09:03

冬雪雪冬 发表于 2018-3-19 14:05
图中没有看到导入模块的操作。

第一行sys.path.append不是么

冬雪雪冬 发表于 2018-3-19 14:19:11

喵叔 发表于 2018-3-19 14:09
第一行sys.path.append不是么

这是加入搜索的路径。
import 模块名 才是导入。

alltolove 发表于 2018-3-19 14:24:54

你的模块目录里有__init__.py文件吗?

喵叔 发表于 2018-3-19 14:46:42

alltolove 发表于 2018-3-19 14:24
你的模块目录里有__init__.py文件吗?

页: [1]
查看完整版本: 导入自己写的模块报错,找不到名字