Loading

Python 基础数据类型

整型变量(Int):

Python 中没有什么长整型短整形,就只有 int 整形 它可以是任意长度的数包含正负,例如+100-9237 等等

浮点型变量(Float):

通俗的讲就是小数,当然了并不完全是小数,浮点数确切的说是计算机中存储无法用整形变量确切表示的数!
参看:《计算机组成原理》定点数和浮点数的及其表示!

布尔值(Bool):

即真值,Python 中只有 TrueFalse!在Python中所有的对象都有他的Bool属性。函数、类、对象等 都有bool属性。下面是常见的bool值:

>>> bool()   # 空
False
>>> bool([])  # 空列表
False
>>> bool('')  # 空字符串
False
>>> bool({})   # 空字典
False
>>> bool(())   # 空元组
False
>>> bool(0)   # 0
False
>>> bool(1 == 2)  # 逻辑表达式
False
>>> bool(None)   # None
Fales
>>> bool('0')   # 字符 '0'
Ture
>>> bool([1, 2])  # 非空列表
Ture
>>> def func():
...     """"""
... 
>>> bool(func)  # 函数
True
>>> class Bool():
...     """"""
... 
>>> bool(Bool)  # 类
True
>>> b = Bool()   # 实例化对象
>>> bool(b)
True

字符串(Str):

类似于<但是,lksdfm>,并且字符串是支持切片的

>>> string = 'My name is Monkey'
'My name is Monkey'
>>> str1 = 'Name-''Monkey'
>>> print(str1)
'Name-Monkey   # 在Python中默认的会认为 连续的两个字符串是一个 即使他们之间有空格

同其他语言一样,"\"表是转义

或者 可以使用 “r'” 前缀来声明整个字符串均为原始字符

初识容器对象

上面的几种数据类型,都是对象本身,或者就是值,而不是引用。而容器对象不同,通常容器对象本身会包含其他对象,或对其他对象的引用。我们可以把容器视作用于组织各种元素的数据结构。

Python中常见的容器对象有 list 、dict、deque、set、tuple、OrderreDict等等

容器是存储在内存中的数据结构,并且通常会将全部的值都保存在内存中(但也并非全是如此,比如迭代器和生成器对象)。

一般的容器的值是指向其它对象的引用。但是在大多数情况下,当谈到某个容器的值时,我们谈论的仅是值,而不是容器中包含的引用本身。

在讨论容器的可变性时,则更多的关注于引用,例如对嵌套列表的深浅拷贝操作、和对不可变容器对象tuple中包含了对可变对象的引用,那么当被引用的可变对象发生改变时,相应的容器值也将发生改变等。下面介绍几个容器对象。

列表(List):

List(列表) 是 Python 中使用最频繁的几个数据类型。列表可以完成大多数集合类的数据结构实现。与C/C++的数组不同的是,列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [] 之间、用逗号分隔开的元素集合。像下面这些

>>> list([1,1,2,3,4])  # 纯整形数字列表
[1, 1, 2, 3, 4]
>>> list(['1',True,None,[]])   # 不同对象组成的列表
['1', True, None, []]
# 甚至可以是函数对象
>>> def func():
...     """"""
... 
>>> [func, func]
[<function func at 0x102f18ae8>, <function func at 0x102f18ae8>]

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

字典(Dict):

字典(dictionary)是Python中另一个非常有用的内置数据类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。键(key)必须使用不可变类型。并且不能是True、False、None这些。在同一个字典中,键(key)必须是唯一的,值不一定唯一。

特别说明 Python3.6 之后,普通的字典也成为了!!!有序字典!!!

>>> d1 = {'name':'monkey', 'gender':'male'}
>>> d2 = {1:func, 2:func}
>>> d1
{'name': 'monkey', 'gender': 'male'}
>>> d2
{1: <function func at 0x102f18ae8>, 2: <function func at 0x102f18ae8>}  # key 可以是数字 值可以是函数 甚至是类 或者你希望的任何东西

元组(Tuple):

元组与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
元组中的元素类型也可以不相同,元组也叫只读列表,或不可变列表。事实上,如果元组中是可变对象的引用,那它还是会变得,虽然元组本身没变,还是原来的引用,但是引用对象变了。

举个简单的例子。你提着两个行李箱,相当于元组中的两个对象,现在约定箱子不能变,你带的东西可以变么? 显然是可以的,箱子里的东西改了就好了,你手中还是那两个箱子。

需要说明的是在Python中两个被“,“ 分割的元素被认为是一个元组

>>> a = 'name', 'monkey'   # 被 "," 分割
>>> type(a)
<class 'tuple'>

集合(Set):

集合(set)是一个无序不重复元素的序列,通常用来去重。
基本功能是进行成员关系测试和删除重复元素。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },
因为 { } 是用来创建一个空字典。

posted @ 2020-06-18 17:51  StKali  阅读(147)  评论(0编辑  收藏  举报