Почему я не могу передать переменные в MySQLdb.connect ()? - PullRequest
0 голосов
/ 20 сентября 2019

У меня следующий вопрос:

python MySQLdb.connect с использованием переменных

У меня точно такая же проблема, но я проверял десятки раз, чтобыубедитесь, что значения в моих переменных именно такие, как я ожидаю.

Если я использую буквенные строки, я могу подключаться каждый раз:

db = MySQLdb.connect("my_host","my_user","my_passwd","my_database")

Однако, если я загружаю значения из другого файла в переменные (с ТОЧНЫМИ ЖЕ ЗНАЧЕНИЯМИ, без лишних кавычек или чего-либо, проверено неоднократно) Мне не удается подключиться каждый раз:

db = MySQLdb.connect(db_host,db_user,db_passwd,db_name)

Насколько я понимаю, то, что я пытаюсь сделать, должно работать просто отлично.Есть ли хотя бы способ извлечь сообщение об ошибке из команды MySQLdb.connect?

Здесь находится блок, в котором я назначил свои переменные.

    db_host, db_user, db_passwd, db_name = '','','',''
    f = open("../db_config.txt","r");
    configLines = f.readlines();
    for i in configLines:
        (key,value) = i.split('=')
        if (key=='db_host'):
            db_host = value
        elif (key=='db_user'):
            db_user = value
        elif (key=='db_passwd'):
            db_passwd = value
        elif (key=='db_name'):
            db_name = value
    f.close()

Когда я их распечатываюпозже они выглядят идентичными значениям, которые я успешно использую в качестве строковых литералов.

Специальных символов нет.Имя хоста имеет точки, как mysql.chriscalef.com, пароль имеет цифры и буквы, все остальное - только буквы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...