python基础(二):数值、字符串、列表

mac2024-07-18  48

数值

显示

float浮点型

精度问题:计算机硬件导致 >>> 1.1+2.2 3.3000000000000003 显示取两位小数 >>> f = 2.2222 >>> 'f={0:.2f}'.format(f) 'f=2.22'

除法

特殊情况

除法取整 >>> 10 //4 2 精度不同的操作 >>> 10//4.0 2.0

结果是高精度的

取整

math中的floor函数,正向取整即正数向下取整,负数向下取整 >>> import math >>> math.floor(3.2) 3 >>> math.floor(-3.2) -4 math中的trunc函数,截断式取整 >>> import math >>> math.trunc(3.2) 3 >>> math.trunc(-3.2) -3 全局的round函数,四舍五入 >>> round(3.2) 3 >>> round(3.9) 4

进制

进制开头字母转换函数八进制0ooct()十六进制0xhex()二进制0bbin()

十六进制10表示为0xa

特殊类型

decimal >>> import decimal >>> decimal.Decimal('1.1')+decimal.Decimal(2.2) Decimal('3.300000000000000177635683940') >>> 1.1+2.2 3.3000000000000003

decimal精度问题处理得更好

boolean true本质上是int型1,false本质上是int型0。

字符串

声明

单引号、双引号、三引号 双引号:一般存在于字符串里有单引号的情况。 三引号:生成说明文档。

转义符

\’"\n\b :退格\t :四个空格\a 忽略转义符:r‘内容’

操作

求长度:len加、乘 >>> 'xue'+'tongxue' 'xuetongxue' >>> 'xue'*5 'xuexuexuexuexue' 打印:循环 >>> for c in s: ... print(c) ... h e l l o >>> for c in s: ... print(c,end='') ... hello>>>

取特定位置

切割:最后一个不操作

>>> s='sbaoua' >>> s[0:3] 'sba' 限制步长:注意-1 >>> s[:] 'sbaoua' >>> s[::2] 'sau' >>> s[::-1] 'auoabs'

注意:字符串不可以原位改变,改变只能赋值。

>>> h='hello' >>> h= h.replace('e','a') >>> h 'hallo' 分割:split >>> url = 'codeclassromc,uke,youpin' >>> l=url.split(',') >>> l ['codeclassromc', 'uke', 'youpin'] 开头结尾:startswith(’’) endswith(’ ')包含:find

列表

特点

任意对象,通过索引查找,可变

操作

追加:.append()扩展:.extend()排序:.sort()反置:.reverse()弹出:.pop() 类似栈删除:.del() 全局检索:.index()统计:.count()

注意

引用类型,支持改变。 直接相等,原列表改变,一起变。 copy、[:],原列表改变,新列表不变。

>>> l1 = [1,2,3,4,5] >>> l2 = l1 >>> l2 [1, 2, 3, 4, 5] >>> l1[1] = 9 >>> l1 [1, 9, 3, 4, 5] >>> l2 [1, 9, 3, 4, 5] >>> l3 = l1[:] >>> l1[2]=100 >>> l1 [1, 9, 100, 4, 5] >>> l3 [1, 9, 3, 4, 5] >>> l4 = l1.copy() >>> l4 [1, 9, 100, 4, 5]
最新回复(0)