我们讲一下字符串类型和数字类型,这两个Python中基本数据类型之间的转换。也就是说字符串类型可以转为数字类型,数字类型也可以转为字符串类型。
数据类型差异
对于不同的数据类型,代码的行为有所不同。如下图所示,图中的print(5 + 10)是数值计算,而print('5' + '10')是字符串连接。
如果将字符串类型和数据类型连接在一起,则会发生错误。
数字类型转换为字符串类型
数字类型转换为字符串类型需要用到str()函数。
str()函数:将对象转化为适于人阅读的形式。返回一个对象的string格式。
语法如下所示:
class str(object='')
object -- 对象
如下图所示,变量num是数字类型,我们使用str()函数将这个数字类型转换成了字符串类型。
字符串类型转换为数字类型
字符串类型转换为数字类型需要用到int() 函数。
int() 函数:用于将一个字符串或数字转换为整型。
语法如下所示:
class int(x, base=10)
x -- 字符串或数字
base -- 进制数,默认十进制
x -- 字符串或数字
base -- 进制数,默认十进制
如下图所示,str1是字符串类型,使用int()函数将这个字符串类型的变量转换成了整型,最后与10相加等于15。
re模块被称为正则表达式,其作用为,创建一个“规则表达式”,用于验证和查找符合规则的文本,广泛用于各种搜索引擎、账户密码的验证等。
预定义字符:
\d:匹配所有的十进制数字0-9
\D:匹配所有的非数字,包含下划线
\s:匹配所有空白字符(空格、TAB等)
\S:匹配所有非空白字符,包含下划线
\w:匹配所有字母、汉字、数字a-z A-Z 0-9
\W:匹配所有非字母、汉字、数字,包含下划线
特殊字符:
$:匹配一行的结尾(必须放在正则表达式最后面)
^:匹配一行的开头(必须放在正则表达式最前面)
*:前面的字符可以出现0次或多次(0~无限)
+:前面的字符可以出现1次或多次(1~无限)
?:变"贪婪模式"为"勉强模式",前面的字符可以出现0次或1次
.:匹配除了换行符"\n"之外的任意单个字符
|:两项都进行匹配
[ ]:代表一个集合,有如下三种情况
[abc]:能匹配其中的单个字符
[a-z0-9]:能匹配指定范围的字符,可取反(在最前面加入^)
[2-9] [1-3]:能够做组合匹配
{ }:用于标记前面的字符出现的频率,有如下情况:
{n,m}:代表前面字符最少出现n次,最多出现m次
{n,}:代表前面字符最少出现n次,最多不受限制
{,m}:代表前面字符最多出现n次,最少不受
{n}:前面的字符必须出现n次