在python 3中将变量包含到字符串中的首选方法是什么?

时间:2018-06-13 15:08:33

标签: string python-3.x variables

我是一名初学者Python程序员,我正在使用Python 3.6,并且我从多个资源中学习,我注意到有不同的方法将变量包含在字符串或print语句中。

  • 我知道添加字符串和变量:

    name = "Brian"
    age = 20
    print("Hello " + name + " I see you are " + str(age) + " years old.")
    
  • 我知道使用逗号混合变量和字符串:

    print("Hello", name, "I see you are", age, "years old.")
    
  • 我也知道.format函数:

    print("Hello {} I see you are {} years old.".format(name, age))
    

    我的问题是,哪些是Python程序员首选的方法?这些方法和何时使用它们之间有什么区别吗?

2 个答案:

答案 0 :(得分:1)

Dan的Python字符串格式经验法则: 如果您的格式字符串是用户提供的,请使用模板字符串来避免安全问题。 否则,如果您使用的是Python 3.6+,则使用Literal String Interpolation;如果不是,则使用“New Style”字符串格式。 引自Python Tricks The Book,由Dan Bader撰写。

答案 1 :(得分:1)

如果使用Python 3.6+,则应该更喜欢字符串文字插值。

name = "Brian"
age = 20
print(f"Hello {name}, I see you are {age} years old.")

输出:

"Hello Brian, I see you are 20 years old."