鱼C论坛

 找回密码
 立即注册
查看: 1562|回复: 10

[已解决]解释一下这个意思

[复制链接]
发表于 2020-7-22 09:26:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
result="result is %s:%d"%(name,score)
在书上看到这么个东西。没明白,有懂得能详细解释下么,最好通俗易懂一点哈
最佳答案
2020-7-22 09:28:36
本帖最后由 sunrise085 于 2020-7-22 09:38 编辑

这是格式化字符串赋值
"result is %s:%d"%(name,score)
这是一个格式化字符串,  "result is %s:%d" 这是字符串主体部分,其中%s和%d是两个格式化标记,用后面的参数列表代替,%(name,score)是格式化列表,两个参数分别替换字符串中的格式化标记,按顺序替换。
name是程序之前赋值过的一个字符串变量,score是之前赋值过的一个int类型变量。
字符串格式化完成之后赋值给result

举个例子:
name="Sam"
score=99
那么  "result is %s:%d"%(name,score)   格式化完成后是:"result is Sam:99"
执行完这一句代码后result变量为"result is Sam:99"

看看我的这个帖子Python细节之5、print输出函数的一些方法总结
还有小甲鱼的总结:字符串格式化符号含义及转义字符含义
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-22 09:28:36 | 显示全部楼层    本楼为最佳答案   
本帖最后由 sunrise085 于 2020-7-22 09:38 编辑

这是格式化字符串赋值
"result is %s:%d"%(name,score)
这是一个格式化字符串,  "result is %s:%d" 这是字符串主体部分,其中%s和%d是两个格式化标记,用后面的参数列表代替,%(name,score)是格式化列表,两个参数分别替换字符串中的格式化标记,按顺序替换。
name是程序之前赋值过的一个字符串变量,score是之前赋值过的一个int类型变量。
字符串格式化完成之后赋值给result

举个例子:
name="Sam"
score=99
那么  "result is %s:%d"%(name,score)   格式化完成后是:"result is Sam:99"
执行完这一句代码后result变量为"result is Sam:99"

看看我的这个帖子Python细节之5、print输出函数的一些方法总结
还有小甲鱼的总结:字符串格式化符号含义及转义字符含义
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-22 09:29:55 | 显示全部楼层
sunrise085 发表于 2020-7-22 09:28
这是格式化字符串赋值
"result is %s:%d"%(name,score)
这是一个格式化字符串

能详细解释下各个符号和字母的意思么,尤其是这个括号和括号里的东西
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 09:32:08 | 显示全部楼层

% 格式化,字符串中的  %s 和 %d 就是两个格式化占位符,分别按顺序对应替换字符串外括号里的对应参数

将参数对应的数值替换掉 %s 和 %d 占位符,而 %s 是 格式化字符串,%d 是格式化整型,详见下表:


                               
登录/注册后可看大图


你也可以看看这里的笔记,Python 的几种格式化整理的很好:实用干货:字符串格式化 :https://fishc.com.cn/thread-145610-1-1.html


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 09:32:20 | 显示全部楼层
Congratulate 发表于 2020-7-22 09:29
能详细解释下各个符号和字母的意思么,尤其是这个括号和括号里的东西

刚刚正在编辑,一不小心发出去了。。。你看的还挺快。我再编辑一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 09:33:17 | 显示全部楼层
Congratulate 发表于 2020-7-22 09:29
能详细解释下各个符号和字母的意思么,尤其是这个括号和括号里的东西

%s和%d对应后面的name和score变量,相当于输出效果是result is <name>:<score>,然后把这个字符串赋值给result
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 09:34:07 | 显示全部楼层
Twilight6 发表于 2020-7-22 09:32
% 格式化,字符串中的  %s 和 %d 就是两个格式化占位符,分别按顺序对应替换字符串外括号里的对应参数

...

你是全天住在论坛吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 09:41:40 | 显示全部楼层
Congratulate 发表于 2020-7-22 09:40
没有,就是看看视频看看书,不懂就来问

没说你啊……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 09:43:09 | 显示全部楼层
老八秘制 发表于 2020-7-22 09:34
你是全天住在论坛吗


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-22 09:55:36 | 显示全部楼层
其实就是对指定的字符或者数据类型进行占位,简称占位符对吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-22 10:33:16 | 显示全部楼层
你还可以看看小甲鱼的这个视频,https://www.bilibili.com/video/BV1Fs411A7HZ?p=16
比较通俗易懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-11 11:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表