gpt4 book ai didi

python - 在 Python 3 中使用字符串格式而不是字符串连接是否更 Pythonic?

转载 作者:行者123 更新时间:2023-11-28 19:42:56 25 4
gpt4 key购买 nike

所以我正在用 Python 3.4 编写一个文本游戏,它需要经常使用 print() 函数来向用户显示变量。

我一直这样做的两种方法是字符串格式化字符串连接:

print('{} has {} health left.'.format(player, health))

还有,

print(player + ' has ' + str(health) + ' health left.')

那么哪个更好呢?它们的可读性和输入速度都一样快,而且完全的表现也一样。哪个更Pythonic,为什么?

问题是因为我在 Stack Overflow 上找不到与 Java 无关的答案。

最佳答案

取决于字符串的长度和变量的数量。对于您的用例,我相信 string.format 更好,因为它具有更好的性能并且看起来更清晰易读。

有时对于较长的字符串,+ 看起来更干净,因为变量的位置保留在它们应该在字符串中的位置,您不必四处移动眼睛来映射 的位置>{} 到相应的变量。

如果你能设法升级到 Python 3.6,你就可以使用更新的更直观的字符串格式化语法,如下所示,两全其美:

player = 'Arbiter'
health = 100
print(f'{player} has {health} health left.')

如果你有一个非常大的字符串,我建议使用像 Jinja2 ( http://jinja.pocoo.org/docs/dev/ ) 之类的模板引擎。

引用:https://www.python.org/dev/peps/pep-0498/

关于python - 在 Python 3 中使用字符串格式而不是字符串连接是否更 Pythonic?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41481263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com