有沒有什麼辦法可以在沒有連接的情況下在unicode符號之間放置一個聲明的字符串?例如,我已經聲明瞭一個字符串a = "house"
。無論如何,我可以聲明<\house/>
沒有 必須導致"<\\" + a + "/>"
?當涉及更多的unicode符號時,連接可能變得麻煩。在Python 2.7中構造沒有連接的字符串012
0
A
回答
2
字符串插值怎麼樣?
"<\\%s/>" % a
或多個項目:
<"\\%s %s/>" % (a, b)
與字典也可以工作:
"<\\%(a)s/>" % {'a': a}
的Python 3.x的風格插值使用做了內置str.format
方法:
"<\\{}/>".format(a)
"<\\{} {}/>".format(a, b)
"<\\{1} {0}/>".format(a, b) # => "<\\" + b + " " + a + "/>"
"<\\{a} {b}/>".format(a=a, b=b)
2
你可以使用str.format
方法:
a = "Hello {name}, welcome to {place}."
a.format(name="Salem", place="Tokyo") # "Hello Salem, welcome to Tokyo."
docs.python.org - String format syntax
如果你需要更強大的東西,你可以用一個模板引擎。有一個簡單的例子與Jinja2:
jinja_example.py
from jinja2 import Template template_file = Template(open("templatefile").read()) obj = [ {"name": "John", "surname": "Doe"}, {"name": "Foo", "surname": "Bar"} ] print template_file.render(data=obj)
templatefile
<html> <body> {% if data %} {% for user in data %} <h1>Hello {{ user.name }} {{ user.surname }}.</h1> {% endfor %} {% else %} <h1>Nothing found.</h1> {% endif %} </body> </html>
和輸出(一些新行的刪除):
$ python jinja_example.py
<html>
<body>
<h1>Hello John Doe.</h1>
<h1>Hello Foo Bar.</h1>
</body>
</html>
您可以在Python Wiki中找到大量模板引擎。
相關問題
- 1. 構造DataContext類的連接字符串
- 2. 如何通過有效連接字符來構造字符串?
- 3. 有沒有辦法在Python中返回字符串連接?
- 4. 實體框架中沒有帶連接字符串的構造函數datacontext
- 5. 連接字符串在python
- 6. 在web.config中連接到MSSQL時沒有連接字符串
- 7. 構造函數中的連接字符串
- 8. 沒有DSN的Oracle連接字符串
- 9. 在python中劃分字符串2.7
- 10. 沒有StreamReader構造函數接受字符串
- 11. 如何構造一個沒有重複字符的字符串?
- 12. Python 2.7連接字符串到PostgreSQL(OOP方法)
- 13. 連接字符串不適用於Python 2.7和PostgreSQL 9.1
- 14. 在Python中連接三個字符串
- 15. 在python中多行連接字符串
- 16. 在Python中連接字符串
- 17. 在Python中連接字符串?
- 18. 在python中連接字符串
- 19. Python 2.7字符串格式
- 20. Python沒有連接字符串和unicode來鏈接
- 21. 有沒有mysql連接器的Python 2.7在Windows
- 22. 是否有可能在DbContext構造函數中需要一個連接字符串,該連接字符串是從DI(startup.cs)配置的,沒有IDbContextFactory?
- 23. 如何附加(連接)字符串來構造一個新的字符串?
- 24. Python字符串連接
- 25. Python 2.7中的Unicode字符串XOR
- 26. Python中的字符串替換2.7
- 27. 在C#中使用字符串連接的字符串連接
- 28. 連接字符串沒有被讀取
- 29. 連接字符串沒有被修改
- 30. 的Python在字符串連接
「Python 3.x風格」適用於2.6+,因此它不是真正的3.x風格 – Blender
@Blender:afaik該功能從3.x引入並支持2.x。 –