无法从modu导入名称

2024-05-04 00:18:05 发布

您现在位置:Python中文网/ 问答频道 /正文

无法从“modulename”导入函数“ident”

def ident(key):
    import pandas as pd
    data = pd.read_csv("dicc.csv")
    data = data.T
    data = data.to_dict()
    print(data[0]["{}".format(clau)])

我的剧本

from modulename import ident

ImportError: cannot import name 'ident' from 'modulename' (/home/. . .)


Tags: csvtokey函数fromimportpandasread
1条回答
网友
1楼 · 发布于 2024-05-04 00:18:05

既然你完全是个初学者,下面是一个完整的例子:

//modulename.py

import pandas as pd


def ident(key):
    data = pd.read_csv("dicc.csv")
    data = data.T
    data = data.to_dict()
    # Note: Here 'clau' is undefined, but maybe you have it elsewhere in your code
    print(data[0]["{}".format(clau)])

//script.py

#!/usr/bin/env python
from modulename import ident

print('look; I imported a function:', ident)

现在您可以运行:

$ python script.py

或者从某个任意目录,它的工作原理相同:

$ cd ~
$ python path/to/script.py

之前我建议在脚本的顶部添加这样的内容:

import os
import sys

sys.path.insert(0, os.path.dirname(__file__))

但是,这应该不再是必需的,因为当您将Python脚本作为主模块运行时,它的目录会自动插入到sys.path的开头,因此应该可以正常工作。你知道吗

我建议学习更多关于Python模块和模块搜索路径的知识(我意识到,当您只想处理一些数据时,这是一种烦人的技术开销,但是如果您打算使用Python,稍后您将通过学习这些概念来感谢您自己)。这里有一个这样的教程(没有附属关系):https://realpython.com/python-modules-packages/

相关问题 更多 >