首页 > 解决方案 > 打印字符串时是否可以显示特殊字符,例如空格、制表符等?

问题描述

例如我有一个字符串

line = r'I like cakes'

可以这样打印吗?

 I\s like\s cakes

repr()在这种情况下不起作用

标签: pythonstringrepr

解决方案


一种方法是为您要替换的每个字符创建一个替换字典。

rep_dict = {' ': '\s', '\n': '\\n', '\t': '\\t'}

以下函数将执行必要的替换:

def quote(s):
    return "".join(repr_dict.get(c, c) for c in s)

repr_dict.get调用尝试在字典中查找字符,并将字符本身用作查找失败的默认值。


推荐阅读