2015-03-02 5 views
-2

Чтобы упростить некоторые из моих кодов, я решил переместить запросы и HTML-код в файлы txt. Однако возникла проблема: большинство моих запросов и HTML, которые я обычно храню внутри кода, имеют переменную посередине. Например, у меня есть это в моем коде:Прочтите txt-файл и добавьте переменную в текст - Python

count = 0 
for x in reviewers: 
    query = """select * 
from mytable 
where reviewer = """ + reviewers[count] 
    cur.execute(query) 
    count = count + 1 
    #do more stuff 

Вопрос заключается в том, как я могу сохранить запросы или HTML-код в текстовых файлах, а затем добавить переменные в середине строки?

Спасибо!

ответ

1

Ok так вот решение, которое я придумал я надеюсь, что это поможет Итак, вы можете сохранить Запросы в текстовых файлах в форме

SELECT * from %s where id = %d 

И как только вы получите запрос, вы можете поместить в него свою переменную. Я предполагаю, что я уже получил запрос из файла.

query = "SELECT * from %s where id = %d" 
completeQuery=query% ('myTable', 21) 
print completeQuery 

Выход будет

SELECT * from myTable where id = 21 

Reference

0

Я все еще не уверен, что вы хотите, Вот способ, чтобы прочитать файл и добавить имя переменной в тексте

строки
query = "" 
f = open("query_file",'r')  
query = f.read() # read the query file into a string 
f.close() 



for x in reviewers: 
    query = query+reviewers[count] # add variable name in the string assuming reviewers[count] gives a string 
    cur.execute(query) 
    count = count + 1 
    #do more stuff 

EDIT

Важным моментом в Python являются неизменная

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

для например

query = "Select from Table" 

вы хотите, чтобы сделать его Select Col from Table

здесь является то, что вы делаете: -

add_me = "Col" 

new_string = query[:-10] + add_me + query[6:] 

Теперь new_string строка будет иметь Select Col from Table

+0

Ты прав я не был достаточно ясно, что ваш пример имеет смысл, то, что я имею в виду, что произойдет, если переменная в середина строки и не справа в конце – rodrigocf

Смежные вопросы