拷贝

python第七天

£可爱£侵袭症+ 提交于 2019-11-29 19:32:56
目录 元组 什么是元组 定义方式 使用方法 定义元组的好处 可变or不可变 有序or无序 字典 字典的作用 定义方式 使用方法 优先掌握 需要掌握 有序or无序: 可变or不可变: 集合 什么是集合 作用 定义方式 使用方法 有序or无序 可变or不可变 深浅拷贝 拷贝 浅拷贝 深拷贝 数据类型总结 存值个数 存一个值 存多个值 有序or无序 有序 无序 可变or不可变 可变 不可变 深浅拷贝(只针对可变数据类型) 元组 什么是元组 元组就是只可取不可更改的列表,元组一创建就是被写死的 定义方式 ()逗号隔开多个元素(可以为任意数据元素) 如果元组内只有一个元素,就必须加个逗号,不然会被python认为是其他的数据类型 tup1 = (1,2,[4,5,6]) tup1 = (1,) 使用方法 索引取值 tup1 = (1,2,[4,5,6]) print(tup1[0]) # 1 索引切片 print(tup1[0:2]) # (1,2) for循环 for i in tup1: print(i) # 1 # 2 # [4, 5, 6] 成员运算 print(2 in tup1) # True len长度 print(len(tup1)) # 3 index 找到索引 print(tup1.index([4,5,6])) # 2 count 统计次数 tup1 = (1,2,[4

Python-数据类型内置方法(2)

核能气质少年 提交于 2019-11-29 19:23:36
目录 元组(tuple) 内置方法: 字典(dict) 内置方法: 优先掌握: 需要掌握 集合(set) 优先掌握 深浅拷贝 拷贝(赋值) 浅拷贝 深拷贝 总结 存值个数 有序 or 无序 可变 or 不可变 访问类型 元组(tuple) 元组是不可变的列表,只可以存不可以修改,早起元组类型占用内存小 定义: tup = tuple((1,2,3)) 内置方法: 索引取值 name_tuple = ("qinyj","age",18) print(name_tuple[0]) 索引切片 name_tuple = ("qinyj","age",18) print(name_tuple[0:2]) 长度len name_tuple = ("qinyj","age",18) print(len(name_tuple)) 循环 name_tuple = ("qinyj","age",18) for i in name_tuple: print(i) count name_tuple = ("qinyj","age",18) print(name_tuple.count("qinyj")) index name_tuple = ("qinyj","age",18) print(name_tuple.index("qinyj")) 有序但不可变类型。 字典(dict) 定义: dic =

元组字典集合内置方法与拷贝

血红的双手。 提交于 2019-11-29 19:22:27
''' 元组字典集合内置方法与拷贝 ''' # 什么是元组tuple(了解):只可取 不可更改 的列表,元组一创建就被写死了 lt = [1, 2, 3] lt[0] = 2 # 1. 作用:元组一创建就被写死了 # 2. 定义方式:()内用逗号隔开多个元素(可以为任意数据类型) lt = list([1,2,3]) tup = tuple((1, 2, 3)) print(tup, type(tup)) # 如果元组只有一个元素,必须得加逗号 tup1 = (1,) print(tup1, type(tup1)) # 3. 使用方法 # 1. 索引取值 print(tup[0]) # 2. 索引切片 print(tup[0:3]) # 3. for循环 for i in tup: print(i) # 4. 成员运算 print(0 in tup) # 5. len长度 print(len(tup)) # 6. index获取元素索引 print(tup.index(1)) # 7. count 计数 print(tup.count(2)) # 4. 有序or无序 # 有序 # 5. 可变or不可变: 压根不存这一说 # 字符串/列表/字典 --》 常用,他们三个就足够描述时间万物了 # 其他的数据类型可以被替代 --》 列表替代元组,redis数据库替代集合 # 1. 作用:

用元组到深浅拷贝

此生再无相见时 提交于 2019-11-29 19:21:40
什么是元组(了解):只可取不可更改的列表 1.作用:元组于创建之初就被写死了 2.定义方式()内用逗号隔开多个元素(可以为任意数据类型) 3.使用方式 1.索引取值 print(tup[0]) 2.索引切片 print(tup[0:3]) 3.for循环 for i in tup print(i) 4.成员运算 print(0 in tup) 5.len长度 print(len(tup)) 6.index 7.count 4.有序无序 有序 5.可变or不可变:压根不存在这一说 防止更改吗? 占用内存少--》写死了 🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧 字典 1.作用:储存多个数据,每个数据具有描述 2.定义方式:{}内用逗号隔开多个键key(不能为可变数据类型)值value(任意数据类型)对#散列表(#表) 3.使用方法 优先掌握 1.按key取值/按key修改值 2.添加至,沒有就添加,有就修改 3.for循環 4.成員運算 5.len長度 需要掌握 1.get 2.update 3.fromkeys 4.setdefault 4.有序无序:无序 5.可变or不可变 1.首先对key做了哈希处理,梅森旋转算法(生成伪随机数) 2.使用哈希函数对更改生成的序列(纯数字),对纯数字除9取余 🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧🔧 什么是集合:交集/并集/补集/差集 ∩∪ 1.作用:1

day07总结

大憨熊 提交于 2019-11-29 19:20:46
目录 元组内置方法 字典内置方法 散列表/哈希表存储数据 集合内置方法 数据类型总结 存值个数 有序or无序 可变or不可变 深浅拷贝(只针对可变数据类型) 深浅拷贝 拷贝 浅拷贝 深拷贝 元组内置方法 什么是元组(tuple):只可取不可更改的列表,元组一创建就被写死了 作用:元组一创建就被写死了 定义方式:()内用逗号隔开多个元素(可以为任意数据类型) 如果元组只有一个元素,必须得加逗号 使用方法 索引取值 索引切片 for循环 成员运算 len长度 index获取元素索引 count计数 有序or无序 有序 可变or不可变 压根没有这一说 定义元祖--》占用内存小--》写死了 字典内置方法 作用 储存多个数据,对每个数据具有描述 定义方式 {}内用逗号隔开多个键key(具有描述意义,不能为可变数据类型):值value(任意数据类型)对 使用方式 按key取值/按key修改值 添加值,没有就添加,有就修改 for循环 成员运算 len长度 keys/values/items get 获取(没有就返回None,可以给定一个默认值 update 更新(等同于list里的extend) fromkeys setdefault(只添加不修改) 有序or无序 无序 可变or不可变 可变 散列表/哈希表存储数据 相比较列表,哈希表插入/删除数据更快 首先对key做了哈希处理

day07 学习小结

左心房为你撑大大i 提交于 2019-11-29 19:18:17
目录 元组内置方法 字典内置方法 散列表/哈希表存储数据 集合内置方法 数据类型总结 存值个数 有序or无序 可变or不可变 深浅拷贝(只针对可变数据类型) 深浅拷贝 拷贝 浅拷贝 深拷贝 元组内置方法 什么是元组(tuple):只可取不可更改的列表,元组一创建就被写死了 作用:元组一创建就被写死了 定义方式:()内用逗号隔开多个元素(可以为任意数据类型) 如果元组只有一个元素,必须得加逗号 使用方法 索引取值 索引切片 for循环 成员运算 len长度 index获取元素索引 count计数 有序or无序 有序 可变or不可变 压根没有这一说 定义元祖--》占用内存小--》写死了 字典内置方法 作用 储存多个数据,对每个数据具有描述 定义方式 {}内用逗号隔开多个键key(具有描述意义,不能为可变数据类型):值value(任意数据类型)对 使用方式 按key取值/按key修改值 添加值,没有就添加,有就修改 for循环 成员运算 len长度 keys/values/items get 获取(没有就返回None,可以给定一个默认值 update 更新(等同于list里的extend) fromkeys setdefault(只添加不修改) 有序or无序 无序 可变or不可变 可变 散列表/哈希表存储数据 相比较列表,哈希表插入/删除数据更快 首先对key做了哈希处理

博客07

*爱你&永不变心* 提交于 2019-11-29 19:15:33
目录 1. 元组(tuple) 1. 作用 2. 定义方式 3. 使用方法 4. 有序or无序 5. 可变or不可变 2. 字典(基于散列表(哈希)实现存储) 1. 作用 2. 定义方式 3. 使用方法 4. 有序or无序 5. 可变or不可变 3. 散列表(哈希表) 4. 集合(基于散列表(哈希)实现存储) 1. 作用 2. 定义方式 (set) 3. 使用方法 4. 有序or无序 5. 可变or不可变 5. Pycharm中代码变黄的原因 6.数据类型总结 7. 深浅拷贝 (1) 拷贝 (2)浅拷贝 (3)深拷贝 1. 元组(tuple) 元组和列表用法相同,只是元组只可取,不可修改,元组一创建就被写死 元组相对于列表的优点在于:占用内存小。不用判断是否增加元组的内存分配,少了这个判断增加内存。 1. 作用 存储多个元素 2. 定义方式 tup = tuple((1, 2, 3)) print(tup, type(tup)) # 如果元组只有一个元素,必须得加逗号,否则括号只是被当做一个运算符的优先级的作用 tup1 = (1,) print(tup1, type(tup1)) 3. 使用方法 # 1. 索引取值 print(tup[0]) # 2. 索引切片 print(tup[0:3]) # 3. for循环 for i in tup: print(i) # 4. 成员运算

day07

痴心易碎 提交于 2019-11-29 19:12:54
字典内置方法 ''' 字典内置方法 可变数据类型 (key为不可变数据类型) dic = {'name':'slk', 'age':18, 'height':180} 按key取值/修改值 len() #返回字典长度 in/not in #成员运算 del dic[key] #删除某个键值对 keys()/values()/items() #取到字典的键/值/键值对 for循环 get(key, new_value) #如果key in dic,返回dic[key];如果key not in dic,返回new_value,默认返回 None update(dic_new) #在字典后增加字典(键值对) fromkeys({key1,key2,key3},values) #新建一个字典,但初始化的值都是一样的 setdefault(key, values1) #当key in dic时,返回dic[key];当key not in dic时,返回values1,并增 加新的键值对 copy() #复制 pop(key) #取出值,并删除键值对 popitem() #不需要传值,默认删除最后一个键值对 ''' 集合内置方法 ''' 集合内置方法 可变数据类型 元素为不可变数据类型 乱序(数字不乱序) 主要作用: 去重 | #并集 & #交集 - #差集 ^ #交叉补集 add()

day07

泪湿孤枕 提交于 2019-11-29 18:59:08
Python深浅拷贝 拷贝(赋值)、浅拷贝、深拷贝 可变or不可变:d不变值可变,即在原值的基础上修改,则为可变数据类型;值变id也变,即重新申请一个空间放入新值,则为不可变数据类型。 拷贝 如果l2是l1的拷贝对象,则l1内部的任何数据类型的元素变化,则l2内部的元素也会跟着改变,因为可变类型值变id不变。 浅拷贝 如果l2是l1的浅拷贝对象,则l1内的不可变元素发生了改变,l2不变;如果l1内的可变元素发生了改变,则l2会跟着改变。 深拷贝 如果l2是l1的深拷贝对象,则l1内的不可变元素发生了改变,l2不变;如果l1内的可变元素发生了改变,l2也不会变,即l2永远不会因为l1的变化而变化。 哈希表 ​ 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 ​ 给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。 基本概念 若关键字为 k ,则其值存放在 f(k) 的存储位置上。由此,不需比较便可直接取得所查记录。称这个对应关系 f 为散列函数,按这个思想建立的表为散列表。

Python深浅拷贝

纵然是瞬间 提交于 2019-11-29 18:19:17
Python深浅拷贝 一、引言 在python中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋给另一个变量的时候,python并没有拷贝这个对象,而只是拷贝了这个对象的引用 针对该列表 l1=['a','b','c',['d','e','f']] 一般有三种方法,分别为:拷贝(赋值)、浅拷贝、深拷贝 注意: 拷贝/浅拷贝/深拷贝都是针对可变类型数据而言的 1.1可变or不可变 id不变值可变,即在原值的基础上修改,则为可变数据类型;值变id也变,即重新申请一个空间放入新值,则为不可变数据类型。 age = 19 print(f'first:{id(age)}') age = 20 print(f'second:{id(age)}') first:4384901776 second:4384901808 二、拷贝 如果l2是l1的拷贝对象,则l1内部的任何数据类型的元素变化,则l2内部的元素也会跟着改变,因为可变类型值变id不变。 l1 = ['a', 'b', 'c', ['d', 'e', 'f']] l2 = l1 l1.append('g') print(l1) print('-'*50) print(l2) ['a', 'b', 'c', ['d', 'e', 'f'], 'g'] ['a', 'b', 'c', ['d', 'e', 'f'], 'g'] 三