您的位置:首页 > 编程语言 > Python开发

python学习笔记(一)--基本操作和基本类型

2017-10-15 14:38 375 查看
前言
此文仅为记录学习要点使用
首先,注释是使用“#”,变量定义不需要制定类型,None为内建值,表空值(区别与null空字符,两者数据结构不一样)。
其次,python不存在main函数,会从执行文件的第一行开始执行,类脚本文件。不需要手动资源回收。除非是在语句块或者函数中定义变量,否则都默认为全局变量。
引用类型和数值类型的理解:
引用类型可以理解为指向存放对象的指针,其实质为保存的为对象的地址,因此对象所有的变更本身不会使指针指向(指向地址)产生影响,是使指针的指向内容产生变化。
数值类型本身是不变的,也即是无论在地址上或者是地址上的内容都是不变的,因此所有使用该值的变量都会指向同一个目标,当值产生变化时,修改变量的指向,使其指向修改后的变量,原先变量并不会因这次修改而产生改变。

列表

列表为可变序列,符号为[],可用下标作为索引直接读取元素

常用操作

1、分片

方式:k=list[start:end]
正数为从头开始计算,负数为从尾开始计算,end下标元素不包含,不填写默认0为头,列表长度为尾。分片返回的k分两种情况,第一种,如果元素为基本数值,则为按值传递处理,第二种,如果元素为引用类型(列表,字典等),则为按引用传递处理。概括来说就是一种浅复制。
方式:k=list[start:end:step]
step为步长,默认为1

2、相加

方式:k=list1+list2
在list1的尾端扩展list2并返回扩展的结果副本,不对list1和list2产生修改

3、append(连接)

方式:list1.append(list2)
将list2作为一个元素连接在list1的尾部,这是作为引用的连接,因此会修改list1,并且在连接后,对list2的修改也会体现在list1身上。

4、extend(扩展)

方式:list1.extend(list2)
对list2进行复制,并将副本在list1的尾部进行扩展,list2副本的每个元素会作为list1的元素身份存在。因此会产生对list1修改,对list2的修改不会传递到list1

5、乘法

方式:k=list*n
对list进行n次浅复制扩展,并返回浅复制扩展的副本。也即是说如果list里面存在引用类型,在n次浅复制扩展后,再对该引用类型进行修改会导致所有浅复制对象都会产生修改。

6、存在检查

方式: k=element in list

返回布尔值,表element是否存在list中,此为非模糊查找,类型与值都匹配才返回true

7、长度,最大,最小

方式:len(list) max(list) min(list)
len返回list长度,max和min使用前提为list内部所有元素都是可以比较的,列表与数值是不能比较的。

8、删除

方式:del(list
) 或者 del(list[start:end])
删除对应元素,会使其他元素下标产生变化和列表长度产生变化

9、分片赋值

方式:list[start:end]=list2
分片的元素会被删除并在start位置扩展list2。所以如果list2长度不够分片,分片中多余元素会被删除,list2长度过长会使list长度增加。

10、计数

方式:list.count(element)
计算某元素的出现次数,但此为非模糊查找,类型与值都匹配

11、第一次出现

方式:list.index(element)
查找某元素第一次出现的下标,但此为非模糊查找,类型与值都匹配

12、出栈

方式:list.pop()
返回最后一个元素,并在list中删除

元组

元组为不可变序列,符号为()

常用操作

1、分片

方式:k=list[start:end]
返回的是元组,其余与列表类似

字典

字典为以键值对保存数据的数据类型,符号为[(),()]
特性:
1 键类型是不可变类型
2 自动添加,即使键不存在,在赋值的瞬间就会自动添加到字典中

常用操作

1、初始化

方式:k=dict([('name1','value1'),('name2','value2')])
或者 k=dict(name1='value1')
使用前者的话,键值可以重复,重复的话后面定义的键值对会覆盖前面的,后者方法中,键值不能重复,否则会报参数重复错误

2、获取

方法:dict.get(key)
根据key获取value,不存在的键值对返回None

3、指定弹出

方法:dict.pop(key)
弹出指定键值对

4、随机弹出

方法:dict.popitem()
随机弹出键值对,说随机其实也不对,是从头开始弹出的,但由于存储/初始化时,键值对的存储是随机次序的,所以随机次序上的有序弹出还是随机
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 博客