- Python進階編程:編寫更高效、優雅的Python代碼
- 劉宇宙 謝東 劉艷
- 275字
- 2021-04-30 12:39:38
2.2.6 字符串插入
下面實現這樣一個需求:創建一個內嵌變量的字符串,變量被其所表示的字符串替換。
Python的f前綴可以方便地格式化字符串中內嵌的變量,相關代碼(insert_var.py)示例如下:
language_name = 'Python' age = 30 test_str = f'{language_name} is {age}.' print(test_str)
執行py文件,輸出結果如下:
Python is 30.
如果要使被替換的變量能在變量域中找到,可以結合使用format_map()和vars()方法,相關代碼(insert_var.py)示例如下:
print(test_str.format_map(vars()))
執行py文件,輸出結果與上面一致。
vars()方法有一個有意思的特性就是,它適用于對象實例,相關代碼(insert_var.py)示例如下:
class Info: def __init__(self, language_name, age): self.language_name = language_name self.age = age info = Info('Python', 30) print(test_str.format_map(vars(info)))
執行py文件,輸出結果同上。
還可以使用字符串模板(insert_var.py)實現,代碼如下:
import string str_t = string.Template('$language_name is $age.') print(str_t.substitute(vars()))
執行py文件,輸出結果同上。
推薦閱讀
- jQuery Mobile Web Development Essentials(Third Edition)
- Rust實戰
- Python高級編程
- Bootstrap Essentials
- Mastering Ext JS
- Java程序設計:原理與范例
- 從Excel到Python:用Python輕松處理Excel數據(第2版)
- Python算法指南:程序員經典算法分析與實現
- Python程序設計與算法基礎教程(第2版)(微課版)
- Django 3.0應用開發詳解
- Hands-On Kubernetes on Windows
- Python第三方庫開發應用實戰
- Qt 5.12實戰
- R語言:邁向大數據之路
- 前端Serverless:面向全棧的無服務器架構實戰