Python字符串前缀u、r、b、f含义

  1. 字符串前加 u或者不加

举例:u"字符串中有中文"
含义
1、前缀u表示该字符串是unicode编码
2、Python2中用,用在含有中文字符的字符串前,防止因为编码问题,导致中文出现乱码。
3、一般要在文件开关标明编码方式采用utf8。
4、Python3中,所有字符串默认都是unicode字符串。

  1. 字符串前加 r

举例:r"adc\n\r\tdkfjkd"
含义
1、前缀r表示该字符串是原始字符串,即\不是转义符,只是单纯的一个符号。
2、常用于特殊的字符如换行符、正则表达式、文件路径。
3、注意不能在原始字符串结尾输入反斜线,否则Python不知道这是一个字符还是换行符(字符串最后用\表示换行)

  1. 字符串前加 b

含义
1、前缀b表示该字符串是bytes类型。
2、用在Python3中,Python3里默认的str是unicode类。Python2的str本身就是bytes类,所以可不用。
3、常用在如网络编程中,服务器和浏览器只认bytes类型数据。如:send 函数的参数和 recv 函数的返回值都是 bytes 类型。
4、在 Python3 中,bytes 和 str 的互相转换方式是
str.encode(‘utf-8’)
bytes.decode(‘utf-8’)

  1. 字符串前加 f
def testFStr():
    name = 'alex'
    age = 25

    print(f'my name is {name}, i am {age} years old')

testFStr()

含义

1、Python3.6新加特性,前缀f用来格式化字符串。可以看出f前缀可以更方便的格式化字符串,比format()方法可读性高且使用方便。
2、而且加上f前缀后,支持在大括号内,运行Python表达式。
3、还可以用fr前缀来表示原生字符串。

你可能感兴趣的:(Python)