首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python在什么参数上区分格式化字符串和普通字符串?

python在什么参数上区分格式化字符串和普通字符串?
EN

Stack Overflow用户
提问于 2018-02-13 15:50:36
回答 2查看 68关注 0票数 4
代码语言:javascript
运行
复制
x = f"There are {n} types of people"

print(type(x)==type("HELLO")) #returns True

如果格式化字符串和普通字符串是相同类型的。函数如何区分何时格式化它或何时不格式化它?

我的猜测是,每当我在字符串之前指定f,解释器就会获取变量的值并对其进行格式化,然后函数接收格式化的字符串。

它是一个简写符号吗,就像Java 8中的lambdas?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-13 15:57:00

在你的例子中:

代码语言:javascript
运行
复制
x = f"There are {n} types of people"

x从来不是f-字符串,它只是一个常规字符串,已经将{n}替换为变量n的值。

对f-字符串进行语法计算,得到的对象类型为str

票数 2
EN

Stack Overflow用户

发布于 2018-02-13 15:56:57

他们是同一类型的。

代码语言:javascript
运行
复制
n = 5
f"There are {n} types of people"

是将变量插入字符串的一种新方法,在Python3.6中引入。

这也可以写成

代码语言:javascript
运行
复制
n = 5
"There are {:d} types of people".format(n)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48770616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档