Python学习笔记丨数据类型基础知识总结与易错点分析

Python数据类型

本篇笔记的主要内容是:Python数据类型,包括列表、字典、集合、数值、字符串、元组。

主要有6种,其中3种是可变类型(列表、字典、集合),另外3种为非可变类型(数值、字符串、元组)

tips:列表和元组很相似,但有两个不同点。第一点是元组使用小括号,而列表使用方括号;第二点是元组声明和赋值后,不能像列表一样添加、删除和修改元素,也就是说元组在程序运行过程中不能被修改。

  • 列表:各项之间用逗号分隔,元素类型可以不同,使用 []进行表示,索引从0开始。
    • list.append():添加元素
    • list.count():检查某元素出现的次数
    • * :重复列表
    • in:检查元素是否存在于列表
    • list(a):将元组a转换成列表
list = [1234567 ]
print(list[2])
3

list.append('a')
print(list)
[1234567'a']

易错点提示:

  1. 列表增加元素:是 .不是 空格,append后的括号⾥只能接受⼀个参数
  2. 不能赋值:a=list.append(3),此时a为None
  3. 列表推导式,由一对方括号所包含的以下内容:一个表达式,后面跟一个 for 子句,然后是零个或多个 forif 子句。 其结果将是一个新列表,由对表达式依据后面的 forif 子句的内容进行求值计算而得出
  • 元组:和列表类似,使用 ()进行表示,不可修改,但是可以进行连接。
    • tuple(a):将列表a转换成元组
    • + :连接两个元组
tup1 = "a""b""c""d"
tup2 = (12345 )

len(tup1)
Out[6]: 4

2 in tup2
Out[7]: True

print(tup1 + tup2)
('a''b''c''d'12345)

易错点提示:

  1. 元组时只读列表,可查询不可修改,常用于存储不想修改的数据
  2. 只含有一个元素,在元素后面加上逗号,否则会被识别为其他数据类型
  3. 切片操作:[start : end : sep] ,即为[开始索引:终点索引:步长],注意右边取不到
  • 字典:可变容器,由成对的key键和value值组成,和电话薄类似,查询速度很快。
    • 键与值使用 分隔
    • 子项之间使用 分隔
    • 同一字典中,不允许键名称重复
    • 同一个键被多次赋值,新值覆盖旧值
    • 键不可变,不能使用列表充当键
listdemo = ['jewin','bio''note',"yes"]
newdict = {key:len(key) for key in listdemo}
# 创建新字典,值为键的长度
print(newdict)
{'jewin'5'bio'3'note'4'yes'3}

易错点提示:

  1. 用 get 获取字典中的值,可以使用 get 方法来代替 if ... else,通常在 key 不存在的情况下会报 KeyError 错误,而这种get方法可以避免。
  2. setdefault方法为字典设置缺省值,如果 key 存在于字典中,那么直接返回对应的值,等效于 get 方法。如果 key 不存在字典中,则会用 setdefault 中的第二个参数作为该 key 的值,再返回该值。
  3. 使用 iteritems 迭代字典中的元素,items 方法返回的是(key ,value)组成的列表对象,这种方式的弊端是迭代超大字典时内存会瞬间扩大,更好的方式是使用 iteritems,具有惰性加载的特性
  4. 字典没有偏移量,所以在提取元素时,中括号中应该写键的名称,即 字典名[字典的键]。提取出来的是key对应的value,⽽不会显示键的数据
  5. 新增元素格式: 字典名[键] = 值。 每次只能新增⼀个键值对。删除元素格式: del 字典名[键]
  • 字符串:使用引号 ( '" ) 来创建,使用方括号来截取字符串
    • 前索引从0开始
    • 后索引从最后一位-1开始
    • 截取字符串遵循 左闭右开原则
    • in:成员运算符
转义字符描述
\反斜杠符号
\'单引号
\"双引号
\a响铃
\b退格(Backspace)
\e转义
\000
\n换行
\v纵向制表符
\t横向制表符
\r回车
\f换页

f-string:格式化字符串(Python3.6 之后版本添加)

a = "sadasdfa12342143fdadfa"
print(f'hello {a}')
hello sadasdfa12342143fdadfa
  • 集合:无序的不重复元素序列,使用大括号 { } 或者 set() 函数创建。
    • 自动去除重复
    • 可以进行交并补运算
    • set.add:添加元素
    • set.remove:移除元素
    • set.pop:随机取出一个元素
a = set('abraewrcadaghdbra')
b = set('alfsacazafsdfm')
print(a-b) #差集
print(a&b) #交集
print(a|b) #并集
print(a^b) #没有同时存在的元素
{'e''r''w''b''h''g'}
{'a''d''c'}
{'e''l''m''r''w''f''z''a''b''s''c''d''h''g'}
{'e''l''m''r''w''f''z''b''s''h''g'}
  • 数字:不允许改变,改变后重新分配内存空间
    • 整型(int) - 通常被称为是整型或整数,是正或负整数,不带小数点
    • 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示
    • 复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示
2-1
Out[23]: 1

2-1.0
Out[24]: 1.0

2.0-1
Out[25]: 1.0
# 浮点运算可能结果会有误差
2-1.9
Out[26]: 0.10000000000000009
0.3-0.1
Out[27]: 0.19999999999999998

易错点提示:

  1. 穿上单引号、双引号、三引号黄袍的内容就是字符串,无论引号里面内容是中文、英文、法文、数字、符号、甚至是火星文
  2. 字符串,就是由一个个字符连接起来的组合,你平时所见的字母、数字、汉字、符号都是字符。 字符串可以用来表示词、语句、甚至是数学公式。
  3. 整数, 英文为 integer, 简称 int。 Python 江湖的整数和我们现实数学中定义的一样:整数是正整数、零和负整数的统称。说白了,就是没有小数点的数字。
  4. 浮点数,英文称为 float。浮点数虽说比整数多一个小数点,但是它存在一个 bug。因为浮点数的特点,导致它在计算机内运算时,结果不是那么精确,会有四舍五入的差,Python 在计算浮点数时,会有相应的转换机制,所以最终的小数精度会缺失。
  5. 只有字符串与字符串才能拼接
  6. 数据类型的查询 type()函数
  7. 数据转换的方法有3个: str() ,int(),float()
  8. 浮点形式的字符串也不能使用 int()强制转换,但是浮点数是可以使用 int()函数来转换
  9. float()函数可以将整数和字符串转换成浮点数类型,但前提是,这个字符串中的内容一定是数字形式
image-20230222143400316
image-20230222143400316

本文由 mdnice 多平台发布

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

生信分析笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值