У меня следующий вопрос:
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, пароль имеет цифры и буквы, все остальное - только буквы.