python 测试字符串类型_python数据类型总结——数字和字符串

本文详细介绍了Python中的变量概念,强调了变量作为内存地址指针的角色。讨论了Python的不可变数据类型,如数字和字符串,以及它们的操作,如拼接和索引。此外,还提到了可变数据类型和内存管理,特别是赋值操作对内存的影响。文章还涵盖了Python的数字类型,包括整型、浮点型和复数,以及字符串的声明、操作和特性。
摘要由CSDN通过智能技术生成

如同人有姓名一般,当python中的数据被创建后,会在存储介质中分配一块区域用于存储数据。通常,我们需要一个名字来指代这部分数据。

python变量

数据的名字,称之为变量。数据存放在内存空间中,变量持有该内存空间的地址。所以,通过变量即可以操作该内存空间。

通过赋值运算符,再加上一个合法的标识符,即可创建一个变量。

b151f8198618367a6a95cbe31cd521d2b31ce519.jpeg?token=05e3eeeaaf08a9771322a00b35526635变量demo1

python还允许你使用下面这种形式。

55e736d12f2eb9382c6fbe08e4c42f33e4dd6f73.jpeg?token=4828dbd369fdf26638c9829748f43263变量demo2

当然了,根据编码规范,demo2显然是不推荐的形式。

当多个变量指向同一块内存空间时,还可以像下面这样。

738b4710b912c8fced2f7c04cea53843d4882143.jpeg?token=1de11bb590df209b337be18823bc174d多变量同空间

注意,当变量a重新赋值为2时,并没有影响b或c的值。这是因为,a重新赋值为2,并不是把a所指向的空间中的内容修改为2,而是重新分配一块空间,用于存放2,再将新空间的地址给a。

python数据类型

如果有过一些其他语言基础的话,通常会Get到两个概念,一个是数据类型,另一个是变量类型。

数据类型就是数据本身有一个分类,数据是属于哪一类的。

变量类型则是跟着数据类型走的。变量指向的内存空间中的数据是什么类型,变量就是什么类型。

python中,变量类型是可变的。即一个变量在创建初或者使用的过程中,不会固定成某个类型。你可以给它一个数字,也可以给它一个字符串。这点和javascript一样,但是,和Java不同。如下:

a5c27d1ed21b0ef4c12fb34eef62fbdc80cb3e03.jpeg?token=2c8e279756ab0e4c1065cc9dbc2fbfdb可变的变量类型

数据类型也有一个可变或不可变的说法,它指的是,当把某个数据类型的数据放入某个内存空间中后,是否可以直接在当前内存中对原有的数据值进行修改。如果可以,称该数据类型可变,如果不可以,则称该数据类型不可变。

当一个变量指向的内存空间中,存放的是一个不可变的数据类型时,要改变该变量对应的值,就必须重新分配一块新的内存空间来存放新值,并将新的内存空间地址提供给变量。

python中,定义了五个标准的数据类型,分别是数字,字符串,列表,元组,字典。它们足以帮助你完成对生活中绝大部分事物的特征描述。

python数字

数字是不可变的。

生活中的大部分数字都可以在python表示。比如说整数,小数等。在python2中,较小的整数称之为整型,较长的直到无限长度的整数称之为长整型,即int和long。这和其它大部分语言都是相差不多的。但是,在python3中,移除了长整形的说法,只保留了整型。并且,它的长度是无限的。

比如说,你可以通过python计算 100000 ** 100000,只要你有足够的时间和耐心。我就计算一下10 ** 100吧,毕竟我怕老。如下:

6f061d950a7b020876f830d8537f58d5572cc806.png?token=3429a0871cc1a9a8269bd4496dae7a0310的100次方

小数在python中称之为浮点型,形成整数部分和小数部分。

python支持科学计数法,如下:

2cf5e0fe9925bc31e25735706f7927b7ca137078.jpeg?token=c94d37c3cc9b06e650ae90f0682bdf92科学计数法

从上面的demo还可以看出,当你采用科学计数法时,即使本身是一个整数,也会用浮点型来表示,只是其小数部分为0。

python还支持复数。如下:

0ff41bd5ad6eddc4e4b7c7a80b7d1cfb536633b9.jpeg?token=cd3438f72988c01fddf3a0c050f0b451复数

就对数学的支持上,python绝对是不遗余力的。甚至通过引入一些第三方的包,你还可以方便地进行向量,矩阵等数学概念的表达与计算。

python字符串

除了数字,字符串也是生活中最常用的表达方式之一。

字符串是不可变的。如下:

562c11dfa9ec8a13d058f848c4a53b89a1ecc001.jpeg?token=878a05e26ab187df76df9bd026b8d05c不可变的字符串

可以通过一个单引号或双引号来声明一个字符串,也可以通过三引号来声明一个多行字符串。如下:

2cf5e0fe9925bc317b65ace96f7927b7cb137037.jpeg?token=e8334c900595155f4130b773a422705c字符串声明

仍然基于编码规范,推荐团队采用统一的字符串声明方式,如统一用单引号或双引号,包含使用三引号时。不要单双混用。

某些语言中,单个字符可以用一个新的类型表示,如char。在python中,即使单个字符,也是一个字符串。

假设你的字符串是以单引号的形式声明的,而在字符串中,又可能包含一个单引号,这种情况下,你需要转义字符的帮助。如下:

314e251f95cad1c8bd920b234c98cd0fc93d5131.jpeg?token=8f3a57a1641f5eb0f71d7e06c81e253c转义字符

5243fbf2b2119313e3f2fdc8549ea6d190238d45.png?token=038d12776658dbb5efb341ec6ba09429转义字符参考表

操作符和字符串搭配起来,也会产生一些奇妙的效果。

可以用 + 号来完成两个字符串的拼接,如下:

43a7d933c895d1437ca191c94356280458af07b5.jpeg?token=5c426481ad1de5f098dc052cf8dbaf87字符串拼接

可以用 * 号来完成字符串的重复,如下:

6a600c338744ebf857a87091ea5f7d2c6259a7eb.jpeg?token=9e5fe0cd4afe7d95f25db26c65b15019字符串重复

通过方括号中的索引,可以方便的取出字符串中某个单字。如下:

d6ca7bcb0a46f21f9cc72dd9c482c1660e33aef1.jpeg?token=07e69eb8f6667221ed07bd9e2895fea0索引取单字

对于一个长度为n字符串来说,从前向后,索引从0开始,直到 n-1,从后向前,索引从-1开始,直到-n。如下:

ae51f3deb48f8c54715923bc0b8f87f3e2fe7fcc.jpeg?token=258e91c4ecd358652d18e9b776ff7fe2正反索引

如果尝试获取字符串中一个索引范围外的字符,会提示IndexError,索引错误。

91ef76c6a7efce1bd490950c9df759d8b68f65ed.jpeg?token=98bb060577861a909751e87ce1b15110索引错误

方括号不仅可以通过索引取出单个字符,还可以截取某一部分,如下:

9825bc315c6034a8b2c15ee7f8b5e352082376e6.jpeg?token=600ef828a7814fbf1add31c282ed2f1f字符串截取

或许你可能会尝试通过索引对字符串中的某个单字符进行修改,由于字符串的不可变性,你会得到一个类型错误,TypeError。如下:

cdbf6c81800a19d8b3d77057015c288da71e463c.png?token=b6925af4e0450b8ecc66913e85054ca3TypeError

上面的demo还说明,在截取字符串时,无论是采用正向索引还是反向索引,都需要从较小的索引到较大索引来截取,并且,在截取时,遵循左闭右开的原则,即左包含,右不包含。

in 和 not in可以用来判断某个字符串是否包含在另一个字符串中。如下:

b21bb051f8198618940354aa784b84758ad4e681.jpeg?token=2321d7d84569a3161195dbed359acf63in 和 not in

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值