python字符串前加r、f、u、l 的区别

f-strings 是指以 f 或 F 开头的字符串,其中以 {} 包含的表达式会进行值替换。(目前支持python3.6版本)python

下面看下 f-strings 的使用方法学习

基本使用(做用:替换值)编码

>>>name = 'xiaoming'
>>> age = 18
>>> f"hi, {name}, are you {age}"
#结果以下
'hi, xiaoming, are you 18'
>>> F"hi, {name}, are you {age}"
'hi, xiaoming, are you 18'

  

在字符串前加r可防止字符串转义code

做用:没有转义特殊或不能打印的字符。unicode

#Python学习交Q群:778463939
>>> s='abc\nabc'
>>> s
'abc\nabc'
>>> print s
abc
abc
>>> s=r'abc\nabc'
>>> s
'abc\\nabc'
>>> print s
abc\nabc

  

u/U:表示unicode字符串字符串

不是仅仅是针对中文, 能够针对任何的字符串,表明是对字符串进行unicode编码。
通常英文字符在使用各类编码下, 基本均可以正常解析, 因此通常不带u;可是中文, 必须代表所需编码, 不然一旦编码转换就会出现乱码。 建议全部编码方式采用utf8编译器

字符串前加 “l”string

表示宽字符,unicode字符( unicode字符集是两个字节组成的。L告示编译器使用两个字节的 unicode 字符集) 如 L"个人字符串" 表示将ANSI字符串转换成unicode的字符串,就是每一个字符占用两个字节。编译

不加时占用字节
strlen("asd")   =   3;   
  
  
加以后占用字节
strlen(L"asd")   =   6;
相关文章
相关标签/搜索