python-2.7 - Python中的格式化程序
问题描述
我有这行代码:
格式化程序 = "%r %r %r %r"
打印格式化程序 % (1, 2, 3, 4) 打印格式化程序 % ("一", "二", "三", "四") 打印格式化程序 % (True, False, False, True) 打印格式化程序 % (格式化程序, formatter, formatter, formatter) print formatter % ( "我有这个东西给你。", "你可以正确输入。", "但它没有唱歌。", "所以我说晚安。")<< <
最后 4 行的输出是:
“我有这个东西给你。” “你可以正确输入。” “但它没有唱歌。” “所以我说晚安。” <<<
我想了解为什么第三句显示在双引号中,而其他句子显示在单引号中。
我试过删除双引号,但它没有产生预期的结果。
print formatter % (1, 2, 3, 4)
print formatter % ("one", "two", "three", "four")
print formatter % (True, False, False, True)
print formatter % (formatter, formatter, formatter, formatter)
print formatter % (
"I had this thing for you.",
"That you could type up right.",
"But it didn't sing.",
"So I said goodnight."
解决方案
'
这是因为你在字符串中有撇号。如果删除它,它将被打印为'But it didnt sing.'
It's 以区分字符串限制。如果它被打印出来会有点混乱'
:'But it didn't sing.'
PS。如果你在你的字符串中添加'
和"
符号,那么事情会变得更加有趣。自己试试。
推荐阅读
- javascript - 链接到 Bootstrap 轮播中的特定幻灯片
- netsuite - NetSuite 中的客户 fxBalance
- python - 在 Pandas 中按条件返回常用列
- python - 从 Python 中的文件读取中删除换行符
- mongodb - 如何计算使用 MongoDB 的客户总数?
- php - 从键创建数组
- python - 如何使用 python selenuim 滚动滚动特定的 div?
- elm - 在 Elm 中导入/导出模块函数/类型时,“隐藏”发生了什么?
- c - ***检测到堆栈粉碎***:已终止。任何解决方案?
- kubernetes - Istio:在不同节点注入的 pod 副本无法与 istio 通信