【问题标题】:What type of code should I use to insert some strings in a string?我应该使用什么类型的代码在字符串中插入一些字符串?
【发布时间】:2023-02-11 10:59:38
【问题描述】:

我想在字符串中插入一些字符串。

我所知道的是有四种方法可以做到这一点,这里有四个例子:

query = "What type of code should I use to insert some strings in a string?"

category = "Python"

query_category = "".join(["Query: ", query, " Category: ", category])

或者

query = "What type of code should I use to insert some strings in a string?"

category = "Python"

query_category = "Query: " + query + " Category: " + category

或者

query = "What type of code should I use to insert some strings in a string?"

category = "Python"

query_category = f"Query: {query} Category: {category}"

或者

query = "What type of code should I use to insert some strings in a string?"

category = "Python"

query_category = "Query: {query} Category: {category}".format(query = query, category = category)

我应该使用什么类型的代码在字符串中插入一些字符串?任何人都可以解释每个代码的优缺点吗?

【问题讨论】:

  • 似乎 f 弦是最简单和最干净的方法。
  • 我认为用加号连接字符串是正常的做法。
  • 是的,f-strings 是第三个例子。
  • 3,如果你的python版本支持f-strings,否则,1。
  • 回到古代历史,比如 Python 1,+ 很慢,使用 join 很重要。差异不再很重要,除非在特殊情况下。你在这里犯了过早优化的罪,把时间浪费在相对不重要的问题上。首先,让它以一种对你有意义的方式工作。然后决定它是否足够快。

标签: python


【解决方案1】:

我总是尝试使用 f 弦。对我来说更清楚。选择你自己的方式。

【讨论】:

    【解决方案2】:

    简答

    您应该使用 f-strings(第三种方式)。

    f-strings 比其他方法更易读、更简洁且更不容易出错。在我的测试中(测试速度)。使用 f-strings 是最快的方法。

    长答案

    f-strings 是格式化字符串的好方法。它们不仅比替代方案更易读、更简洁、更不容易出错,而且速度更快!

    语法简单

    语法类似于您对 str.format() 所做的,但不那么冗长。在这四种方式中,它是最容易阅读的,对吧?

    f (F) 也可以使用大写字母:

    query_category = F"Query: {query} Category: {category}"
    

    任意表达式

    因为 f 字符串是在运行时计算的,所以您可以将任何和所有有效的 Python 表达式放入其中。这允许你做一些漂亮的事情。

    你可以像这样做一些非常简单的事情:

    nine_times_nine = f"{9 * 9}"
    

    也可以调用函数:

    def function():
        …
    
    call_function = f"{function()}"
    

    概括

    F 弦是使用它们的完美方式。有关更多信息,请查看此 article

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-14
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-20
      • 1970-01-01
      • 2014-09-25
      相关资源
      最近更新 更多