Python的核心数据类型
在学习的过程中也会不时更新,做学习记录 嘿嘿~
可分为数字(整数,浮点型,复数)、字符串、元组、列表、集合、字典等
字符串
- 字符串可以单独存在也可以存在一个变量当中
- 字符串是不可变对象,对字符串进行的所有操作都是产生一个新字符串,不会在原字符串上进行更改
列表list需要注意的
- 定义使用
ls = ['a', 'b']
或者ls =list( ('a', 'b'))
元组转换为列表 - 列表中的元素类型可以不一样
- 可以用 + 和 * 符号进行连接和重复
- 列表推导式
元组tuple
- 元组当中的元素是不可变的,但可以包含可变的元素
t1 = ('a', 'b', ['c', 'd'] )
或者- 定义t1 = 'a', 'b', ['c', 'd']
可使用或不适用小括号- 当只有元组当中只有一个元素时候,逗号不可省略t2 = ('a', )
- 元组定义后不可更改也不可以删除,这是和列表的主要区别
- 元组可以作为字典的键,也可以作为集合的元素,但是列表不可以,包含列表的元组不可以。
字典dict
- 键值对的形式
d1 = {'a':1, 'b': 2}
,无序;键必须不可变,如字符串、数字、元组 a={}
类型是空字典,一般dict
函数只用在于生成空字典d1.get('a', 'default')
输出 1d1.get('c', 'default')
输出default,如果键值没有在字典当中则返回默认值d1.get('c')
返回None
# 以下两种方式相同
# dict()函数 的创建
items = [('name', 'Tom'), ('age', 42)]
d1 = dict(items)
print(d1)
# dict关键字参数创建字典
d1 = dict(name='Tom', age=42)
print(d1)
集合set
- 定义
s1 = set([1, 2, 2, 3, 3])
或者s1 = {1, 2, 2, 3, 3}
- s是一个集合
s.pop() # 从集合当中随即删除一个元素,并返回 s.remove(x) # 将元素x从集合当中移除,如果不存在会发生错误 s.discard(x) # 将元素x从集合当中移除,如果不存在不会发生错误
- 可以进行交并差等操作
混淆
空的集合类型一般用set()函数,而生成空的字典类型利用 {} ,否则容易混淆
运算符的一些注意
# +-*/不再赘述;
# % 求余数
# //向下取整
# ** 求幂次
对第二个第三个实例还有些不太理解。
在编程过程中须注意的一些问题
# 判断两个数是否相等,涉及到精确度的问题
print(math.isclose(0.4-0.3,0.1))
# python3.x 默认源文件默认以~~~utf-8~~~编码,所有字符串都是Unicode字符串
# python2.x里, 字符串就是bytes类型,因此b前缀没什么具体意义, 只是为了兼容python3.x的这种写法
# 字符串前加r u b 的作用,可参考链接https://blog.csdn.net/weixin_41010198/article/details/89354971
生成器&lambda函数
生成器表达式当中的元素,在使用一次后他就会失效,他只能使用一次
# <函数名>=lambda <参数列表> : 表达式
f = lambda x,y : x + y
来源:CSDN
作者:snake_seeker
链接:https://blog.csdn.net/snake_seeker/article/details/104274491