Python如何借助函数将字符串变量嵌入带双引号的输出字符串
实现输出带双引号包裹的可变变量方法
要实现类似print("\"text\"")的输出效果,同时保证变量可灵活变更,可根据使用场景选择以下方案:
基础方案:直接拼接双引号
- 兼容所有Python版本,逻辑最简单
- 示例代码:
var = "text" # 用单引号包裹双引号,避免转义符冗余 print('"' + str(var) + '"')
- 输出结果:
"text" - 适配特性:无论var为任意数据类型,统一转字符串后拼接即可生效,变更var值无需修改输出逻辑。
推荐方案:格式化字符串实现
- 代码更简洁,可读性更强,适合单/多变量的拼接场景
Python3.6+ 推荐用f-string写法
var = "text" print(f'"{var}"')
- 输出结果:
"text",f-string会自动完成变量到字符串的转换,无需手动调用str()。
兼容旧Python版本用str.format()写法
var = "text" print('"{}"'.format(var))
复用方案:自定义通用打印函数
- 适合项目中多次需要输出带双引号内容的场景,避免重复编写格式逻辑
- 示例代码:
def print_quoted(val): print(f'"{str(val)}"') # 调用时var可任意变更 var = "text" print_quoted(var) # 测试其他类型变量 var = 2024 print_quoted(var) # 输出"2024"
进阶场景:输出规范转义的双引号字符串
如果变量本身包含双引号内容(例如var = '她说:"今天下雨"'),直接外层包双引号会出现格式冲突,可使用json.dumps输出符合JSON规范的双引号包裹字符串,自动处理内部特殊字符转义:
import json var = '她说:"今天下雨"' print(json.dumps(var, ensure_ascii=False))
- 输出结果:
"她说:\"今天下雨\"",参数ensure_ascii=False用于保留中文原生输出,避免转义为Unicode编码。
内容的提问来源于stack exchange,提问作者MysticMia
相关产品推荐
相关产品推荐

