Python3几种字符串格式化方法

之前一直使用python2.x随处可见的字符串格式化(即.format形式)觉得这种方式很笨,后来在网上搜了一些文章和看了一些别人写的代码,总结以下几种Python3的字符串格式化方法。你可以选择一个你用的顺手,或看的顺眼的。

一、%形式

def display_name():
    name = "Steve"
    age = 45
    print("%s的岁数是:%d" % (name,age))

display_name()

>>Steve的岁数是:45

需要区别需要格式化变量的类型

二、.format形式

1.提前定义好变量


def display_name():
    name = "Steve"
    age = 45
    print("{0}的岁数是{1}.他弟弟的岁数也是{1}".format(name,age))    # 有下标
    print("{}的岁数是{}".format(name,age))   #没下标
    display_name()
>>Steve的岁数是45.他弟弟的岁数也是45
Steve的岁数是:45

2.未提前定义变量

def display_name():
    print("{name}的岁数是:{age}".format(name="Steve",age=45))   #.format内定义变量
    print("{:s}的岁数是:{:d}".format("Steve",45))   #不定义变量,直接使用
display_name()

>>Steve的岁数是:45
Steve的岁数是:45

三、f-string模式

Python3.6新特性,因为简洁,也是我最喜欢的。
在字符串前加"f",需要引用哪个变量,用大括号将变量名括进去就行了。非常方便

def display_name():
    name="Steve"
    age=45
    print(f"{name}的岁数是:{age}") 
display_name()

>>Steve的岁数是:45

没有哪种最好,只要使用顺手,达到目的,哪个都可以。

你可能感兴趣的:(Python3几种字符串格式化方法)