如何将项目导入模块?

问题描述 投票:0回答:1

我想创建自己的模块来返回Mysql游标,但我的模块依赖于 import mysql.connectorfrom mysql.connector import Error.

我怎么解决这个问题?是否与目录位置的问题有关?__init__.py 文件?我得到了 NameError: name 'mysql' is not defined.

from mysql import connector
from mysql.connector import Error


class SqlCnt:
    def __init__(self, db):
        """Constructor for this class."""
        self.db = db

    @classmethod
    def get_input(self):
        db = input("Enter the database:")
        try:
            cnx = mysql.connector.connect(
                host="localhost",
                database=''+db,
                port=******,
                user="root",
                password="*******",
                raise_on_warnings=True,
                use_pure=False,
                autocommit=True
                )
            print("Connection made,cursor object returned")
            cursor = cnx.cursor(prepared=True)
            return cursor
        except mysql.connector.Error as error:
            print("Failed to connect {}".format(error))
python init mysql-connector
1个回答
0
投票

当你使用 from,它只取该对象。也就是说,在你执行了这一行之后。

from mysql.connector import Error

你不需要使用 mysql.connector 如这一行所写。

except mysql.connector.Error as error:

相反,正确的做法是只使用对象的名称,就像这样。

except Error as error:

0
投票

让我解释一下你犯了什么错误以及解决的方法。connectormysqlErrormysql.connector 所以你只有 connectorError. 你不能用 mysql 如同 except mysql.connector.Error as error 因为你从来没有进口 mysql.所以可以通过使用 import mysql.这和访问目录一样,当你在子目录中时,你不能对父目录进行操作。

© www.soinside.com 2019 - 2024. All rights reserved.