【发布时间】:2021-07-26 10:05:32
【问题描述】:
所以当我运行以下代码时:
x = 4
y = 'the value', x, 'is truthy'
print(y)
我不明白为什么我的输出是 :('the value', 4, 'is truthy')
例如,如果我只是直接打印这行代码:
print('the value', x, 'is truthy')
不是很严重的问题,我可以使用格式化功能来避免问题V
def truthy_or_falsy2(arg):
if arg:
return f'The value {arg} is truthy'
return 'The value {arg} is falsy'
感谢您的建议!
【问题讨论】:
-
在您的
y赋值语句中,您无意中使用了在赋值运算符右侧创建元组的语法——您可以通过检查y的类型来判断。试试吧,y = "the value " + str(x) + " is truthy" -
刚刚复习过元组,还在学习整个 Python。我认为那是有道理的。那么说 format 方法是在字符串中轻松放置整数的唯一方法是正确的说法吗?我知道你可以使用 str() 函数,但不这样做,这是唯一的方法吗?
-
是的,格式字符串(“f 字符串”)可能是从混合类型表达式创建字符串的最流行选择,因为它们是在 Python 3.6 中引入的(参见 Python 3's f-Strings: An Improved String Formatting Syntax (Guide))
-
好的,谢谢你的帮助!
标签: python-3.x string variables integer