python中r’‘, b’‘, u’‘, f’'的含义及用法详解

python中,字符串是一种常用的数据类型,它可以用来表示文本、字符、符号等信息。字符串可以用单引号或双引号来表示,例如:

s1 = 'Hello'

但是,有时候我们需要对字符串进行一些特殊的处理,例如格式化、转义、编码等。这时候,我们可以在字符串的前面加上一些特殊的字符,来表示字符串的不同类型或功能。

这些特殊的字符有r’‘, b’‘, u’‘, f’',它们分别表示原始字符串、字节字符串、Unicode字符串和格式化字符串。下面我们来详细介绍它们的含义和用法。

 r’‘:原始字符串

r’‘表示原始字符串,也就是说,它会忽略字符串中的转义字符,直接按照原样输出。转义字符是一些用反斜杠(\)开头的特殊字符,它们可以表示一些无法直接输入的字符,例如换行(\n)、制表符(\t)、双引号(\")等。例如:

s = "Hello\nWorld"

图片

上面的代码中,\n表示换行符,所以输出结果是两行。但是如果我们在字符串前面加上r’‘,就会忽略转义字符,直接输出原始内容。例如:

s = r"Hello\nWorld"

图片

上面的代码中,\n不再表示换行符,而是直接输出为普通字符。这样就可以避免一些不必要的转义问题。

原始字符串常用于表示一些包含反斜杠的内容,例如正则表达式、文件路径等。例如:

import re

 b’‘:字节字符串

b’‘表示字节字符串,也就是说,它会将字符串转换为字节类型(bytes),而不是普通的字符串类型(str)。字节类型是一种用来存储二进制数据的数据类型,它可以表示图片、音频、视频等非文本信息。字节类型和字符串类型之间可以通过编码和解码进行相互转换。编码是指将字符串按照某种规则转换为字节,解码是指将字节按照某种规则转换为字符串。常见的编码规则有UTF-8、GBK、ASCII等。例如:

s = "Hello"

上面的代码中,我们使用encode()和decode()方法来实现编码和解码。也可以直接在字符串前面加上b’‘来创建字节类型。但是要注意,字节类型只能包含ASCII字符,也就是0~127之间的字符。如果包含其他字符,就会报错。例如:

b = b"你好" # 报错:SyntaxError: bytes can only contain ASCII literal characters.

字节类型常用于处理一些二进制数据,例如网络传输、文件读写等。例如:

import requests

u’‘:Unicode字符串

u’‘表示Unicode字符串,也就是说,它会将字符串转换为Unicode类型(unicode),而不是普通的字符串类型(str)。Unicode类型是一种用来表示各种语言字符的数据类型,它可以兼容所有的字符编码,而不会出现乱码或错误。Unicode类型和字符串类型之间可以通过编码和解码进行相互转换。例如:

s = "你好"

上面的代码中,我们使用decode()和encode()方法来实现解码和编码。也可以直接在字符串前面加上u’‘来创建Unicode类型。例如:

u = u"你好"

Unicode类型在Python 2.x中是一种独立的数据类型,和字符串类型是不同的。但是在Python 3.x中,字符串类型就是Unicode类型,所以不需要再使用u’‘来表示了。例如:

s = "你好"

Unicode类型常用于处理一些多语言字符,例如中文、日文、韩文等。例如:

u = u"こんにちは"

f’‘:格式化字符串

f’‘表示格式化字符串,也就是说,它会将字符串中的花括号{}内的表达式替换为实际的值。格式化字符串可以方便地插入变量、函数、运算等内容,而不需要使用+或format()等方法。格式化字符串在Python 3.6中引入,是一种新的特性。例如:

name = "Alice"

上面的代码中,我们在字符串前面加上f’‘,然后在花括号内写入变量名或表达式。这样就可以自动替换为对应的值。也可以在花括号内加上一些格式化选项,例如对齐、填充、精度等。例如:

pi = 3.1415926

上面的代码中,我们在花括号内加上:f’‘表示格式化字符串,也就是说,它会将字符串中的花括号{}内的表达式替换为实际的值。格式化字符串可以方便地插入变量、函数、运算等内容,而不需要使用+或format()等方法。格式化字符串在Python 3.6中引入,是一种新的特性。例如:

name = "Alice"

上面的代码中,我们在字符串前面加上f’‘,然后在花括号内写入变量名或表达式。这样就可以自动替换为对应的值。也可以在花括号内加上一些格式化选项,例如对齐、填充、精度等。例如:

pi = 3.1415926

上面的代码中,我们在花括号内加上:.2f,表示保留两位小数。

格式化字符串常用于生成一些动态的文本内容,例如日志、报告、消息等。例如:

import datetime

来源-数据小郑

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇