2017-10-20 35 views
0

我試圖使用python(第一年UNI學生學習蟒蛇的基本概念)如何用長長的字符串(html模板)中的字符串列表來替換子字符串的多個實例?

說我有一個HTML模板這樣寫一個文本文件,網頁文件:

<!DOCTYPEhtml> 
<html> 
<head> 
    <title>News Archive</title> 
</head> 

<body> 
    <br> 
    <ol> 

    <!-- Article 1 --> 

    <h1>***TITLE***</h1> 


    <img src=***IMGURL*** 
    <p>***DESCRIPTION***</p> 
    <p><strong> Full story: </strong> ***LINK*** </p> 
    <p><strong> Dateline: </strong> ***PUBDATE*** </p> 
    <br/> 
    <!-- Article 2 --> 
    <h1>***TITLE***</h1> 
    <img src=***IMGURL*** 

    <p>***DESCRIPTION***</p> 

    <p><strong> Full story: </strong> ***LINK*** </p> 
    <p><strong> Dateline: </strong> ***PUBDATE*** </p> 

</body> 
</html> 

可以說我想要按順序替換列表中的字符串的所有實例\*\**TITLE***。下面是一個包含字符串列表:

titles = ['HI', 'HELLO'] 

我如何將取代*** ***標題與'HI'一審和\*\**TITLE***'HELLO'二審?

我試過這個基本的循環,但我不認爲我已經正確地做了(因爲我也只是在學習蟒蛇的基礎,我覺得老師想要一個for循環)

for tags in range(2): 
    html_code = html_template.replace('***TITLE***', titles) 

提前致謝。 (PS:對不起,可怕的格式,新的堆棧溢出)

編輯:對不起忘了提至關重要的細節...
如果我想創建一個for循環替換例如*** TITLE ***及其各自的2個字符串列表,*** IMGURL ***及其各自的2個字符串列表,*** DESCRIPTION及其各自的2個字符串列表,以及其他佔位符的其他內容?

回答

1

可以指定你想多少次更換:

for t in titles: 
    html_template = html_template.replace('***TITLE***', t, 1) 
+0

@ navre3這將取代'第一次出現「*** *** TITLE」'與第一項't'和等等。 –

+0

如果我想要創建一個for循環來替換例如\ * \ ** TITLE ***及其各自的2個字符串列表,\ * \ ** IMGURL ***及其各自的2個字符串列表,\ * \ * *說明***與其各自的2個字符串列表,等等佔位符的其餘部分? – navre3

相關問題