python笔记——基本数据类型

一.数字类型

1.数字类型分类
整数类型——1002
浮点数类型——100.2
复数类型——100+2j

2.整数类型
整数类型与数学中的整数的概念一致,并没有范围限制,而C语言中的整数类型会有范围限制,这使python处理较大数据更有优势,因为我们不用像C语言一样担心溢出。整数类型有不同进制下的表示,分为十进制,二进制(0b,0B开头),八进制(0o,0O开头),十六进制(0x,0X开头),而不同类型的整数之间可以直接运算

3.浮点数类型
python中的浮点数必须带有小数部分,1010是整数而1010.0是浮点数。浮点数的取值精度是有范围限定的,这点是和整数不一样的地方。取值范围是-10307——10308,精度是10-16
注意:浮点数类型的数据进行运算时会出现不确定尾数
0.1+0.6=0.70000000000009
只是正常的现象,并不是出现了错误
解决方法: 使用 **round(x,d)**函数,该函数可以对x进行四舍五入,保留d位小数,浮点数计算一般使用该函数辅助。
e与E: 该符号用来表示科学计数法。例如:1.09e4表示1.09104,3.09E-9表示3.0910-9

4.复数类型
复数类型与数学中的复数类型概念一致,z=a+bj,a是实部,b是虚数部分。虚数部分用jJ标识。
例如:9.8+8j,2.0+1j,5.8+2.1j
注意: 虚部b为1时不能省略,省略后j表示变量而不是虚数。
获取实部虚部: 对虚数z,z.real可以获得实数部分而z.imag获得虚数部分

二.数值运算操作符

1.基本运算符
x+y——求和
x-y——求差
x*y——求积
x/y——求商(结果可以是浮点数
x//y——整数商(向下取整
x%y——求余
-x——相反数
+x——本身
x**y——x的y次幂

2.二元增强运算符
x+=y——x=x+y
x-=y
x*=y
x/=y
x//=y
x%=y
x**=y
其他均与第一种情况类似

3.不同类型数据的运算
整数<浮点数<复数
即整数是浮点数的特例,浮点数是复数的特例,所以不同类型数据进行运算的时候将生成最宽数据类型
123+8.0=131.0——整数+浮点数=浮点数

三.解释器内置运算函数

1.内置函数
python解释器内置了一些与数值运算,类型转换的函数,既然是内置函数,也就是不需要导入库的函数

2.数值运算函数
(1)abs(x)——x的绝对值(和math库中的fabs()进行区分)
(2)divmod(x,y)——输出(x//y,x%y)的二元组形式
(3)pow(x,y[,z])——幂余函数,(x**y)%z,[…]里的参数可以省略,那么就和 x* *y 没有区别
(4)round(x[,d])——对x四舍五入保留d位小数,这个在浮点数计算时有应用,而round(x)返回四舍五入的整数值
(5)max(x1,x2…xn)——返回其中的最大值
(6)min(x1,x2…xn)——返回其中的最大值

3.数字类型转换函数
(1)int(x)——x可以是浮点类型或字符串类型,int(100.98)=100,int(“100”)=100
(2)float(x)——x可以是整数类型或字符串类型
float(10)=10.0,float(“10.01”)=10.01
(3)complex(re[,im])——生成一个实部为re,虚部为im的复数

3.数字类型判断函数
type(x)——返回x的类型,适用于所有类型的判断

四.math库函数基本使用

1.math库概述
math库是python提供的内置数学类函数库
math库不支持复数类型
math库包含4个数学常数和44个函数

2.库的引用

import math
math.xxx()#库名+函数名
from math import xxx
xxx()#函数名
from math import *
xxx()#函数名

3.数学常数
在这里插入图片描述

4.三角函数
在这里插入图片描述

5.数值计算函数
在这里插入图片描述
6.对数函数
在这里插入图片描述

7.高等函数
在这里插入图片描述

五.字符串类型

1.字符串类型的表示
由0个或多个字符组成的有序字符序列,用一对双引号单引号或一对三单引号三双引号括起来。其中,三单引号可以表示多行字符串。

2.字符串输入输出方式
input将用户输入的内容当作字符串类型,print可以直接打印字符串

name=input("请输入名字:")
print(name)

3.字符串的两种序号体系
正向递增序号:如果字符串长度为L,最左侧字符序号为0,向右依次递增,最右侧字符序号为L-1
反向递减序号:如果字符串长度为L,最右侧字符序号为-1,向左依次递减,最右侧字符序号为-L

name="lingxitong"
print(name[3])#结果为g
print(name[-3])#结果为o

4.字符串的区间访问形式(切片)
string[N:M]格式:表示字符串从N到M且不包括M的字符序列,其中N和M为字符的索引号N缺失表示开头,M缺失表示末尾。正向索引和逆向索引可以混合使用。

name="helloworld"
print(name[2:-2])#正向逆向索引同时使用,结果为llowor
print(name[:6])#N缺失表示从头开始,结果为hellow
print(name[2:])#M缺失表示到末尾结束,结果为lloworld
print(name[:])#表示从头到尾,结果为helloworld

string[N:M:K]格式:按照步长切片,K为步长,如果K小于0则从后往前截取。

name="ohmyhoney"
print(name[::2])#表示从头到尾按步长2切片,结果为omhny
print(name[::-1])#表示从尾到头按步长为1切片,结果为yenohymho

5.转义字符
python的转义字符为,与后面相邻的字符组成新的含义
\n——换行
\——反斜杠
'——单引号
"——双引号
\t——制表符

print("\"大家好\"")#结果为"大家好"

6.字符串操作符
x+y——连接两个字符串
xn或nx——复制n次字符串
x in s——如果x是s的字串则返回true,否则返回false

7.字符串处理函数
len(x)——返回字符串长度
str(x)——返回x所对应的字符串形式
hex(x)/oct(x)——整数x所对应的十六进制或八进制小写形式的字符串
chr(u)——u为unicode编码,返回对应的字符
ord(x)——x为字符,返回其unicode编码

str([1,2])#结果为"[1,2]"
str(1.23)#结果为"1.23"
hex(425)#结果为")0x1a9"

8.Unicode编码
统一的字符编码,即覆盖几乎所有字符的编码方式
python中字符串中每个字符都是unicode编码方式
关于unicode编码其实有好多有趣的玩法,可以尝试

六.字符串处理方法

1.常用内置方法
方法一般指以a.b()形式调用的函数,python常用的字符串内置方法如下
str.lower()——返回字符串str的副本,全部为小写字母
str.upper()——返回字符串str的副本,全部为大写字母
str.split(sep=None)——返回一个列表,由str被seq分隔的部分组成
str.count(sub)——返回sub在str中出现的次数
str.replace(old,new)——所有old子串被替换为new
str.center(width,[,fillchar])——字符串居中函数,fillchar默认为空格
str.strip(chars)——从str中去掉左侧和右侧的chars中的字符
str.join(iter)——在iter除最后一个元素外,每个元素后面都加一个str,注意顺序

2.字符串的格式化format函数
基本使用格式:模板字符串.format(参数)

"{}{}{}".format("我喜欢的是数字",3,"......")#结果为我喜欢的是数字3......

不难看出{}符号相当于,用来填充对应的数据,而槽的内部可以进行进一步的控制,格式如下
{参数序号:<填充><对齐><宽度>,<.精度><类型>}
填充:用于填充的单个字符
对齐:<>^分别表示左对齐右对齐和居中对齐
宽度:用于设定槽的宽度
,:数字千分位的分隔符
精度:浮点数精度或字符串最大输出长度
类型:整数类型b,c,d,o,x,X 浮点数类型:e,E,f,%
看几个例子,我们就理解参数的使用了

"{0:30}.format("helloworld")#结果是"helloworld									"
#原因是设置了槽的宽度30
"{0:*>30}".format("python")#结果为"***********************python"
#原因是设置了填充,右对齐和槽宽
"{0:-^20,}".format(1234567890)#结果是"---1,234,567,890---"
#原因是设置了填充,居中对齐,槽宽和千分位分隔

关于整数的类型输出包括六种格式
b——二进制
c——整数对应的unicode
d——十进制
o——八进制
x——小写十六进制形式
X——大写十六进制形式

关于浮点数类型输出包括四种格式
e——浮点数对应小写字母e的指数形式
E——浮点数对应大写字母E的指数形式
f——标准浮点形式,f前加数字可表示保留小数的位数
%——浮点数的百分形式

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值