栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python学习笔记之三(数据类型)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python学习笔记之三(数据类型)

目录

一、基本数据类型

1、整数类型

2、浮点数类型

3、科学计数法

4、复数类型

5、基本操作符

6、数值运算基本函数

7、优先级

二、组合数据类型

1、集合类型

2、序列类型

(1)字符串

(2)元组

(3)列表

(4)字典


一、基本数据类型

1、整数类型

十进制:1010, -99

二进制:0b010,-0B101

八进制:0o123,-0O456

十六进制:0xFF,-0xa9

2、浮点数类型

取值范围: ~ 

精度:

注:浮点数运算存在不确定尾数

print(0.1+0.2)
>>>0.30000000000000004

 可以利用round函数辅助计算

round(x, d)  #对x四舍五入,d是小数截取位数

a = round(0.1 + 0.2, 2)
print(a)
>>>0.3

3、科学计数法

4.3e - 3    ->  4.3 * 

9.6E5  -> 9.6 * 

4、复数类型
z = 1.23e-4 + 89j

print(z.real, z.imag)

>>>0.000123  89.0

5、基本操作符
操作符描述
x + y加,x与y之和
x - y减,x与y之差
x * y乘,x与y之积
x / y除,x与y之商,10 / 3结果是3.3333333333333335
x // y整数除,x与y之整数商,10 // 3结果是3
+ xx本身
- xx的负值
x % y余数,模运算,10%3结果为1
x ** y

冥运算,x的y次冥,,y为小数, 结果是

x op= y

即x = x op y,其中op为二元操作符

x += y  x -= y x *=y x /= y x //= y x %= y x **= y

x = 3
print(x **= 3)
>>>27

6、数值运算基本函数
函数名字描述
abs(x)

绝对值,x的绝对值

abs(-10.01)结果为10.01

divmod(x, y)

商余,返回一个元组类型(x // y, x % y)

divmod(10, 3)结果为(3, 1)

pow(x, y[, z])

冥余,(x ** y) % z,[]里的参数z可省略

pow(2, pow(3, 2), 10)结果为2

round(x, [, d])

四舍五入,d是保留小数位数,可省略默认为0

round(-10.123, 2)结果为-10.12

int(x)

将x变成整数,舍弃小数部分

int(123.45)结果为123;int("123")结果为123

float(x)

将x变成浮点数,增加小数部分

float(12)结果为12.0;float("1.23")结果为1.23

complex(x)

将x变成复数,增加虚数部分

complex(4)结果为4 + 0j

max()

最大值,返回中最大值,n不限

max(1, 9, 5, 4, 3)结果为9

min()

最小值,返回中最小值,n不限

max(1, 9, 5, 4, 3)结果为1

7、优先级
运算符说明Python运算符优先级结合性
小括号()17

无 

索引运算符x[i]或x[i1:i2]16
乘方**15
按位取反~14
符号运算符+(正号) -(负号)13
乘除*、/、//、%12
加减+、-11
按位移动>>、<<10
按位与&9
按位异或^8
按位或|7
比较运算符==、!=、>、>=、<、<=6
is运算符is、is not5
in运算符in、not in4
逻辑非not3
逻辑与and2
逻辑或or1

注:结合性——当一个表达式中出现多个优先级相同的运算符,先执行哪个运算符,先执行左边的叫左结合性,先执行右边的叫右结合性

二、组合数据类型

1、集合类型

        定义:用{}表示,元素间用逗号分隔的数据类型

        特点:无重复,无序,不可变

        应用:包含关系比较(因为遍历集合时间复杂度低)或者数据去重

操作符
操作符描述
S | T并,返回一个新集合,包括在集合S和T中的所有元素
S - T差,返回一个新集合,包括在集合S但不在T中的元素
S & T交,返回一个新集合,包括同时在集合S和T中的元素
S ^ T补,返回一个新集合,包括集合S和T中的非相同元素
S <= T或S < T返回True/False,判断S和T的子集关系
S >= T或S > T返回True/False,判断S和T的包含关系
S |= T并,更新集合S,包括在集合S和T中的所有元素
S -= T差,更新集合S,包括在集合S但不在T中的元素
S &= T交,更新集合S,包括同时在集合S和T中的元素
S ^ =T补,更新集合S,包括集合S和T中的非相同元素

集合处理函数
函数描述
S.add(x)如果x不在集合S中,将x增加到S
S.discard(x)移除S中元素x,如果x不在集合S中,不报错
S.remove(x)移除S中元素x,如果x不在集合S中,产生KeyError异常
S.clear()移除S中所有元素
S.pop()随机返回S的一个元素,更新S,若S为空产生KeyError异常
S.copy()返回集合S的一个副本
len(S)返回集合S的元素个数
x in S判断S中元素x,x在集合S中,返回True,否则返回False
x not in S判断S中元素x,x不在集合S中,返回True,否则返回False
set(x)将其他类型变量x转变成集合类型

2、序列类型

(1)字符串

        定义:由一对单引号或双引号表示单行字符串,一对三单引号或三双引号表示多行字符串

        特点:不可变,有序

        应用:用三引号表示的字符串可以充当注释使用

        索引:str[序号](序号如果是正数,则是从左边开始,如果是负数,则是从右边开始)

        切片:str[M:N:K](表示根据步长K获取序号M到N的字符串,K缺失表示K为1,M缺失表示至开头,N缺失表示至结尾)

s = "123456789"

print(s[1])
>>>"2"
print(s[-1])
>>>"9"
print(s[1:3]) #获取字符串第一个字符到最后一个字符(不包括最后一个字符)的所有字串
>>>"23"
print(s[1:-1]) #不包括序号为-1的元素,即最后一位元素
>>>2345678
print(s[1:6:2])
>>>"246"
print(s[2:])
>>>"3456789"
转义字符
转义字符说明
n换行符,将光标位置移到下一行开头
r回车符,将光标位置移到本行开头
t水平制表符,即Tab键,一般相当于四个空格
a蜂鸣器响铃,注意不是喇叭发生,一般现在的计算机都不带蜂鸣器
b退格,将光标位置移到前一列
\反斜线
'单引号
''双引号
在字符串行尾的续行符,即一行未完,转到下一行继续写
操作符
操作符描述
x + y连接两个字符串
n * x 或 x * n复制n次字符串x
x in s判断x是否在s字符串中,如果是返回True,否则返回False
常用处理函数
函数描述
len(x)

返回字符串x的长度

len("12345")结果为5

str(x)

任意类型x所对应的字符串形式

str(1.23)结果为"1.23"

str([1, 2])结果为"[1, 2]"

hex(x)或oct(x)

整数x的十六进制或八进制小写形式字符串

hex(425)结果为"0x1a9"

oct(425)结果为"0o651"

chr(x)x为Unicode编码,返回其对应的字符
ord(x)x为字符,返回其对应的Unicode编码
str.lower()或str.upper()

返回字符串的副本,全部字符小写/大写

"AbCdEfGh".lower()结果为"abcdefgh"

str.split(sep=None)

返回一个列表,由str根据sep被分隔的部分组成

"A,B,C".split(",")结果为['A', 'B' , 'C']

str.count(sub[,beg=0,end=len(str)])

返回子串sub在str中出现的次数

"an apple a day".count("a")结果为4

str.replace(old, new)

返回字符串str副本,所有old子串被替换乘new

"python".replace("n", "n123.io")结果为“python123.io”

str.center(width[, fillchar])

字符串str根据宽度sidth居中,fillchar为填充可选参数

"python".center(20,"=")结果为"=======python======="

str.strip(chars)

从str中去掉在其左侧和右侧chars中列除的字符

"= python=".strip(" =np")结果为"ytho"

str.join(iter)

在iter变量除最后元素外的每个元素后增加一个str

“,”.join("12345")结果为“1,2,3,4,5”

#主要用于字符串分割

str.find(x[,beg=0,end=len(str)])或str.rfind(x[,beg=0,end=len(str)])从头或尾开始查找,返回下标,找不到返回-1,可指定查找起点
str.index(x[,beg=0,end=len(str)])或str.rindex(x[,beg=0,end=len(str)])从头或尾开始查找,返回下标,找不到返回一个异常,可指定查找起点
str.isdigit()判断字符串里是否都是数字,是返回True,否则返回False
str.islower()判断字符串里是否都是小写字母,是返回True,否则返回False
str.supper()判断字符串里是否都是大写字母,是返回True,否则返回False
str.startswith(x)判断字符串开头是否为x子串
str.endswith(x)判断字符串结尾是否为x子串

字符串的格式化

{<参数序号>:<格式控制标记>}

:<填充><对齐><宽度><,><.精度><类型>

引导

符号

用于填充的

单个字符

<左对齐

>右对齐

^居中对齐

槽设定的输出宽度数字的千位分隔符

浮点数小数精度或

字符串最大输出长度

整数类型

b,c,d,o,x,X

浮点数类型

e,E,f,%

print("{0:=^20}".format("PYTHON"))
>>>'=======PYTHON======='

print("{0:10}".format("PYTHON"))
>>>'PYTHON    '

print("{:,.2f}".format(12345.6789))
>>>'12,345.68'

print("{:%}".format(0.3))
>>>30.000000%

(2)元组

        定义:由一对小括号( )组成,元素间用逗号分隔.

                   任意无符号的对象,以逗号隔开,默认为元组

        特点:不可变,有序

        应用:可用于函数返回多个值

        索引:tuple[序号](序号如果是正数,则是从左边开始,如果是负数,则是从右边开始)

        切片:tuple[M:N:K](表示根据步长K获取序号M到N的元组,K缺失表示K为1,M缺失表示至开头,N缺失表示至结尾)

处理函数
函数描述
tuple(x)

将x转成元组类型

注:字符串、列表、集合可直接转换,字典类型转换只会将所有的Key以元组的形式返回

len(tuple)返回元组长度
max(tuple)返回元组中元素最大值
min(tuple)返回元组中元素最小值

(3)列表

         定义:由一对中括号[ ]组成,元素间用逗号分隔

         特点:可变,有序

处理函数
函数或操作描述
ls[i] = x替换列表ls第i元素为x
ls[i : j : k] = lt用列表lt替换ls切片后所对应元素子列表
del ls[i]删除列表ls中第i元素
del ls[i : j : k]删除列表ls中第i到第j以k为步长的元素
ls += lt更新列表ls,将列表lt元素增加到列表ls中
ls *= n更新列表ls,其元素重复n次
ls.append(x)在列表ls最后增加一个元素x
ls.clear()删除列表ls中所有元素
ls.copy()生成一个新列表,赋值ls中所有元素
ls.insert(i,x)在列表ls的第i位置增加元素x
ls.pop(i)将列表ls中第i位置元素取出并删除该元素
ls.remove(x)将列表ls中出现的第一个元素x删除
ls.reverse()将列表ls中的元素反转
ls.count(x)返回元素x在列表ls中出现的次数
ls.index(x)返回列表ls中元素x的索引值
ls.sort(cmp=None, key=None,reverse=False)对列表进行排序,默认升序

(4)字典

        定义:由一对大{ }组成,为键值对的集合,键值对用冒号:

        特点:键为不可变数据(字符串、元组)值为可变数据(列表、字典),无序

处理函数
操作和函数描述
del d[k]删除字典d中键k对应的数据值
k in d判断键k是否在字典d中,如果在返回True,否则False
len(d)返回字典d中键的个数
d.keys()已列表的形式返回字典d中所有键信息
d.values()以列表的形式返回字典d中所有值信息
d.items()以列表的形式返回字典d中所有键值对(key,value)元组信息
d.get(k[,default])如果键k存在,返回对应的值,如果不存在则返回default
d.pop(k[,default])如果键k存在,取出对应的值,如果不存在则返回default
d.popitem()以元组的形式返回并删除字典d中最后一对键和值,后进先出
d.clear()删除字典d中所有的键值对
d1.update(d2)将字典d2的键值对更新到字典d1中

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/664780.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号