Python的基本数据类型

基本数据类型

数字类型

Python语言提供整数、浮点数、复数3种数字类型。
(1)整数类型
整数类型有4种进制表示:默认情况采用十进制;二进制数以0b或0B引导,由字符0和1组成;八进制数以0o或0O引导,由字符0到7组成;十六进制数以0x或0X引导,由字符0到9、a到f、A到F组成。
(2)浮点数类型
Python语言要求所有浮点数必须带有小数部分,小数部分可以是0。
浮点数的两种表示方法:十进制表示;科学计数法,使用字母e或E作为幂的符号,以10为基数,a×10^b(aEb),结果仍为浮点数。
浮点数运算输出17个数字长度的结果,但只有15个数字是确定正确的。
拓展:
高精度浮点运算类型
Python通过标准库decimal提供了一个更精确的数字类型Decimal,并可以使用getcontext().prec参数自定义浮点数精度的位数。
步骤:
用import引出库decimal,然后decimal.Decimal(‘数字’)高精确度数字,然后decimal.getcontext().prec=精度数,最后输出结果

(3)复数类型
复数可以看作是二元有序数对(a,b),表示为a+bj,a是实数部分,b是虚数部分。
复数类型中实数部分和虚数部分的数值都是浮点类型。对于复数z,可以用z.real和z.imag分别获得它的实数部分和虚数部分。

数字类型的操作

内置的数值运算操作符:
+、-、*、/、//(不大于x与y之商的最大整数)、%(x与y之商的余数)、x ** y(x的y次幂)
数字类型之间相互运算规则:
(1)整数之间运算,如果数学意义上的结果是小数,结果是浮点数
(2)整数之间运算,如果数学意义上的结果是整数,结果是整数
(3)整数和浮点数混合运算,输出结果是浮点数
(4)整数或浮点数与复数运算,输出结果是复数
内置的数值运算函数:
(1)abs(x),x的绝对值,计算复数绝对值时,其值为二维坐标系中复数位置到坐标原点的长度
(2)divmod(x,y) (x//y,x%y),输出为二元组形式
(3)pow(x,y[,z]) (x**y)%z,[…]表示该参数可以省略
(4)round(x[,ndigits]) 对x四舍五入,保留ndigits位小数,round(x)返回四舍五入的整数值
(5)max(a,b,c…) a,b,c…的最大值,数量没有限定
(6)min(a,b,c…) a,b,c…的最小值,数量没有限定
内置的数字类型转换函数
(1)int(x) 将x转换为整数,x可以是浮点数或字符串
(2)float(x) 返回浮点数x或者字符串x所对应的整数类型
(3)complex(re[,im]) 生成一个复数,实部为re,虚部为im,re可以是整数、浮点数或字符串,im可以是整数或浮点数但不能为字符串

字符串类型

字符串是字符的序列表示,可以由一对单引号(‘)、(")或三引号(’‘’)构成。
单引号和双引号都可以表示单行字符串,使用单引号时,双引号可以作为字符串的一部分;使用双引号时,单引号可以作为字符串的一部分。三引号可以表示单行或者多行字符串,三引号中可以使用单双引号,也可以换行。
字符串包含两种序号体系:正向递增序号,如果字符串长度为L,正向递增需要以最左侧字符序号为0,向右依次递增,最右侧字符序号为L-1;反向递减序号以最右侧字符序号为-1,向左依次递减,最左侧字符序号为-L。
Python字符串也提供区间访问方式,采用[N:m]格式,表示字符串中从N到M(不包含M)的子字符串,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号,并且字符串的英文字符和中文字符都算作1个字符。
反斜杠字符(\)是一个特殊字符,在字符串中表示转义,\n表示换行,\表示反斜杠,\’表示单引号,\”表是双引号,\t表示制表符(Tab)等。
基本字符串操作符
(1)x+y 连接两个字符串x与y
(2)x*n 复制n次字符串x
(3)x in s 如果x是s的子串,返回True,否则返回False
(4)str[i] 索引,返回第i个字符
(5)str[N:M] 切片,返回索引第N到第M的子串,其中不包含M
内置的字符串处理函数
(1)len(x) 返回字符串x的长度,也可以返回其他组合数据类型元素个数
(2)str(x) 返回任意类型x所对应的字符串形式
(3)chr(x) 返回Unicode编码x对应的单字符,Unicode编码为更全面的编码标准
(4)ord(x) 返回单字符表示的Unicode编码
(5)hex(x) 返回整数x对应十六进制数的小写形式字符串
(6)oct(x) 返回整数x对应八进制数的小写形式字符串
内置的字符串处理方法
(1)str.lower() 返回字符串str的副本,全部字符小写
(2)str.upper() 返回字符串str的副本,全部字符大写
(3)str.title() title()以首字母大写的方式显示字符串中每个单词,即将每个单词的首字母都改为大小写。
(4)str.islower() 当str所有字符都是小写时,返回True,否则返回False
(5)str.isprintable() 当str所有字符都是可打印的,返回True,否则返回False【可打印字符是指除ASCII码0~31及127的剩余字符】
(6)str.isnumeric() 当str所有字符都是数字时,返回True,否则返回False
(7)str.isspace() 当str所有字符都是空格,返回True,否则返回False
(8)str.replace(old,new,[,count]) 返回字符串str的副本,所有old子串被替换为new,如果count给出,则前count次old出现被替换
(9)str.strip([chars]) 返回字符串str的副本,在其左侧和右侧去掉chars中列出的字符
(10)str.join(iterable) 返回一个新字符串,由组合数据类型iterable变量的每个元素组成,元素间用str分隔
字符串类型的格式化
字符串用format()方法进行格式化处理,用于解决字符串和变量同时输出时的格式安排。
基本使用方式:
<模板字符串>.format(<逗号分隔的参数>)
模板字符串由一系列槽组成,用来控制修改字符串中嵌入值出现的位置,其基本思想是将format()方法中逗号分隔的参数按照序号关系替换到模板字符串的槽中。槽用大括号({})表示,如果大括号中没有序号,则按照出现顺序替换,如果大括号中指定了使用参数的序号,按照序号对应参数替换,参数从0开始编号,调用format()方法后会返回一个新的字符串。
需要输出大括号时,采用{{{表示}}},两个大括号中再进行一个括号组成的槽。
format()方法的格式控制:
槽的内部样式:
{<参数序号>:<格式控制标记>}
6种格式控制标记:
(1)<宽度>指当前槽的设定输出字符宽度,如果该槽对应的format()参数长度比<宽度>设定值大,则使用参数实际长度;如果该值的实际位数小于指定长度,则位数将被默认以空格字符补充。
(2)<对齐>指参数在宽度输出时的对齐方式,分别使用<、>、和^3个符号表示左对齐、右对齐和居中对齐。
(3)<填充>指宽度内除了参数外的字符采用什么方式表示,默认采用空格,可以通过填充更换,在<对齐>前进行<填充>
(4)<,>逗号用于显示数字类型的千位分隔符,在<宽度>后面,适用于整数和浮点数
(5)<.精度>小数点,在宽度后面,对于浮点数,精度表示小数部分输出的有效位数;对于字符串,精度表示输出的最大长度
(6)<类型>表示输出整数和浮点数类型的格式规则,在精度后面
整数类型:
b:输出整数的二进制方式
c:输出整数对应的Unicode字符
d:输出整数的十进制方式
o:输出整数的八进制方式
x:输出整数的小写十六进制方式
X:输出整数的大写十六进制方式
浮点数类型:
e:输出浮点数对应的小写字母e的指数形式
E:输出浮点数对应的大写字母E的指数方式
f:输出浮点数的标准浮点形式
%:输出浮点数的百分形式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值