qasa 发表于 2025-4-28 23:42:39

字符串 : 格式format和replacement用法

我想请问的
"{{0}}".format("不打印")
这个的结果为什么是   '{0}'
前面的    \\      得到的结果是    \    我能理解
这个没搞懂


课后练习之中
问题:       
       如果想要显示Pi = 3.14,format前边的字符串应该怎么填写呢?
        ''.format('Pi = ', 3.1415      
我没搞明白的是

FishC 发表于 2025-4-28 23:43:41

关于字符串格式化问题解答


[*]问题一:{{0}}.format() 输出分析
当使用双大括号 {{}} 时,实际作用是转义输出单个大括号。所以:

"{{0}}".format("不打印")

会被解析为:
1. 外层的 {{ 转义为 {
2. 内层的 }} 转义为 }
最终输出固定字符串 {0},参数 "不打印" 未被使用。

[*]问题二:Pi = 3.14 格式化实现
题目代码框架:

''.format('Pi = ', 3.1415)

正确写法应为:

'{} {:.2f}'.format('Pi =', 3.1415)

解析:

[*]{ } 对应第一个参数 'Pi ='
[*]{:.2f} 将第二个参数格式化为保留两位小数

最终输出:Pi = 3.14


关键点总结:

[*]双大括号 {{}} 用于输出原样大括号
[*]{:.nf} 可控制浮点数精度(n为小数位数)


以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

player-none 发表于 2025-4-29 08:45:39

1.
"{{0}}".format("不打印")
两层括号是转义,就像 \\ -> \ 一样;不打印这个内容没有被使用.
2.
'{} {:.2f}'.format('Pi = ', 3.1415)

qasa 发表于 2025-4-29 21:39:50

player-none 发表于 2025-4-29 08:45
1.

两层括号是转义,就像 \\ -> \ 一样;不打印这个内容没有被使用.


您好,谢谢您为我解答我会了,我有一个字符串的课后题没搞懂,您如果有时间可以帮忙看看吗?
题目   str1 = 'i2sl54ovvvb4e3bferi32s56h;$c43.sfc67o0cm99'转为一个有意义的字符串
答案    str1[::3]
答案打印出来的是      'ilovefishc.com'
为什么是str1[::3] 啊   [:3]我知道是0--3字符的意思两个   :    :    我就搞不懂了
我搞不懂的是   [    :    :    3]

player-none 发表于 2025-4-29 21:55:08

qasa 发表于 2025-4-29 21:39
您好,谢谢您为我解答我会了,我有一个字符串的课后题没搞懂,您如果有时间可以帮忙看看吗?
题目   str ...

# 切片语法:
str
# start end 如果不填,意思就是从开头截取到结尾,第三个参数 step 默认 1,意思是从 start 开始开始每 step 个字符组成一组,取第一个,直到遇到 end(不含)
所以代码的意思是从开始到结束,每三个字当一组,找第一个
页: [1]
查看完整版本: 字符串 : 格式format和replacement用法