2、集合 set 集合是由不重复元素组成的无序的集。它的基本用法包括成员检测和消除重复元素。集合对象也支持像 联合,交集,差集,对称差分等数学运算。花括号或 set() 函数可以用来创建集合。...与以连续整数为索引的序列不同,字典是以 关键字 为索引的,关键字可以是任意不可变类型,通常是字符串或数字。如果一个元组只包含字符串、数字或元组,那么这个元组也可以用作关键字。...、所有键、所有值 字典可以存储列表和字典,一般来说字典的keys可以是元组(不可变类型),values可以是列表 和 字典 5)字典的操作方法 序号 函数及描述 clear() 删除字典内所有元素 copy...default值 key in dict 如果键在字典dict里返回true,否则返回false items() 以列表返回可遍历的(键, 值) 元组数组 keys() 返回一个迭代器,可以使用 list...key值必须给出。否则,返回default值。 popitem() 随机返回并删除字典中的最后一对键和值。
Django中带的migrations数据表中更改数据库记录 字段 常用的字段 自增长字段 models.AutoField() models.BigAutoField() 二进制数据 models.BinaryField...,Meta类的字段如下: db_table ordering 列表或者元组形式 verbose_name 别名 verbose_name_plural 别名复数 abstract 不同步到数据库,只是用于被别的类继承...permissions 定义权限 managed 是否按照Django规则管理模型类 默认是True unique_together=()/((),()) 对应MySQL中的联合唯一约束 app_label...删除对应的模型类代码 删除migrationd文件夹下面的模型类 删除Django的migrations表中对应的记录 删除数据库表 导入数据 Django shell 导入数据 引入模型 调用模型对象的...exclude(),reverse(),distinct() extra(),defer(),only() 实现字段别名,排除一些字段,选择一些字段 values(),values_list() 获取字典或者元组形式的结果集
() 检查字典中是否含有某键。...如果字典中这个键存在,你可以取到它的值。 如果所找的键在字典中不存在,你可以给这个键赋默认值并返回此值。 ... | 表示联合 & 表示交集 - 表示差集 ^ 差分集里啊 列表(list) 列表是序列对象,可包含任意的Python数据信息,如字符串、数字、列表、元组等。...tuple=1,2,3,4,这也可以是一个元组,在不使用圆括号而不会导致混淆时,Python允许不使用圆括号的元组。 和列表一样,可对元组进行索引、分片、连接和重复。也可用len()求元组长度。 ...元组的索引用tuple[i]的形式,而不是tuple(i)。 和列表类似,使用tuple(seq)可把其它序列类型转换成元组。
集合和字典 上文说完了列表和元组,本文继续介绍另外两种常用的数据结构,集合和字典。 集合 set 集合是由不重复元素组成的无序容器。...: frozenset 类型是不可变并且为 hashable --- 其内容在被创建后不能再改变;因此它可以被用作字典的键或其他集合的元素。...因此键必须是不可变类型,如字符串或数字,包含不可变对象的元组。列表不可以作为键,因为列表可用append()等方法修改。键也必须是唯一的。...检查某个键是否在字典中,使用in 'guido' in tel 'jack' not in tel 遍历字典 在字典中循环时,用 items() 方法可同时取出键和对应的值: knights = {'gallahad...update() 接受另一个字典对象,或者一个包含键/值对(二元组形式)的可迭代对象。如果给出了关键字参数,则会以其所指定的键/值对更新字典: d.update(red=1, blue=2)。
否则返回default的默认值(可存在多个WHEN THEN) 约束 概念: 约束是作用于表中字段上的规则,用来限制存储在表中的数据 目的: 保证数据库中的数据的正确,有效性和完整性 约束类型 约束...: 行为 说明 NO ACTION 当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除/更新。...(与 RESTRICT 一致) 默认行为 RESTRICT 当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除/更新。...(与 NO ACTION 一致) 默认行为 CASCADE 当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有,则 也删除/更新外键在子表中的记录。...SET NULL 当在父表中删除对应记录时,首先检查该记录是否有对应外键,如果有则设置子表 中该外键值为null(这就要求该外键允许取null)。
FP(asset='FX', instrument='European Option') 像字典一样查看其键 (用 _fields),像元组一样查看其值的索引 (用 index) 和计数 (用 count...,我们不需要检查键是否存在,对于不存在的键,会赋一个默认值。...'missing' 和 'another_missing' 时,空列表 [] 作为默认值赋给其键对应的值。...方法,它们只能从尾部添加或删除元素,那么在双端队列里有 appendleft, extendleft 和 popleft 方法,从左边,即尾部,添加或删除元素。...有一个 reversed() 函数,可以逆序返回字典的键。
作用:表在设计的时候加入约束的目的,就是为了保证表中的记录完整性和有效性 约束分类: 主键约束(primary key) PK 概念: MySQL主键约束是一个列或多个列的组合,其值能唯一的标识表中的每一行...,或者是当前正在创建的表 必须为主表定义主键 主键不能包含空值,但是允许在外键中出现空值,也就是说,只要外键的每个非空值出现在指定的主键中,那么这个外键的内容就是正确的 在主表的表名后面指定列名或列名的组合...,那么这个列或列的组合必须是主表的主键或候选键 外键中列的数目必须和主表的主键中的列的数目相同 外键中列的数据类型必须和主表的主键中的列的数据类型相同 方式一:在创建表的时候设置外键约束 语法: constraint...*当前页数) 五、多表查询 多表操作:对两个或两个以上的表进行操作 多表之间的关系:MySQL中多表之间的关系可以概括为:一对一,一对多,多对一,多对多 一对一关系: 实现:在任意表中添加唯一外键,指向另一方主键...,确保一对一关系(少见,遇见了就合并) 一对多/多对一关系: 例如:部门和员工 一个部门有多个员工,一个员工只能对应一个部门 实现:在多的一方建立外键,指向一的一方的主键 多对多关系: 例如:学生和课程
,例如: 需要记录一组数字或其它数据 + 列表中存储的数据可以是任意类型的 + 在需要记录多个数据时,可以使用中括号进行定义 [], + 并且每个数据之间使用逗号分隔 , + 例如以下数据,定义了几组数字...,那么需要加, 不然就不是元组类型了 ### 5.Dict字典类型 + 字典也是用于存储一组或多组数据时使用,使用大括号 {}来定义 + 字典是 键值对 的存储方式 name :admin + 键和值之间使用冒号进行分隔...,多组键值对之间使用逗号分隔 + 键必须是字符串或数字类型,值可以是任意类型 + 键名不能重复,值可以重复 ```python # 比如需要记录一本书的相关数据 书名,作者,价格,。。。...= {1,2,3,'a'} # 给集合添加元素 # a.add('b') # 无法获取集合中的单个元素,但是可以添加和删除 # a.discard('a') # print(a) # 检查当前的元素是否在集合中...会把字符串中的每一个字符当做列表的元素 + 集合 可以转换为 list列表类型 + 元组 可以转换为 list列表类型 + 字典 可以转换为 list列表类型,只保留了字典中的键 + tuple
,例如: 需要记录一组数字或其它数据 + 列表中存储的数据可以是任意类型的 + 在需要记录多个数据时,可以使用中括号进行定义 [], + 并且每个数据之间使用逗号分隔 , + 例如以下数据,定义了几组数字...,那么需要加, 不然就不是元组类型了 ### 5.Dict字典类型 + 字典也是用于存储一组或多组数据时使用,使用大括号 {}来定义 + 字典是 键值对 的存储方式 name :admin + 键和值之间使用冒号进行分隔...,多组键值对之间使用逗号分隔 + 键必须是字符串或数字类型,值可以是任意类型 + 键名不能重复,值可以重复 ```python # 比如需要记录一本书的相关数据 书名,作者,价格,。。。...= {1,2,3,'a'} # 给集合添加元素 # a.add('b') # 无法获取集合中的单个元素,但是可以添加和删除 # a.discard('a') # print(a) # 检查当前的元素是否在集合中... 会把字符串中的每一个字符当做列表的元素 + 集合 可以转换为 list列表类型 + 元组 可以转换为 list列表类型 + 字典 可以转换为 list列表类型,只保留了字典中的键 + tuple
(多对一):在多的一方建立外键,指向一的一方的主键 多对多:建立中间表,包含两个外键,分别关联两方主键 一对一:一对一关系多用于单标拆分,将一张表的基础字段放在一张表中,其他详细字段放在另一张表,以提升操作效率...;实现:在仁义一方加入外键,并且设置外键为唯一的(UNIQUE) 二、多表查询概述 (一)多表查询概述 概述:指从多张表中查询数据 笛卡尔积:笛卡尔积是指在数学中,两个集合A集合和B集合的所有组合情况。...SELECT 字段列表 FROM 表A UNION ALL SELECT 字段列表 FROM 表B; 对于联合查询的多张表的列数必须保持一致,字段类型也需要保持一致。...(二)根据子查询结果不同,分为: 标量子查询(子查询结果为单个值) 子查询返回的结果是单个值(数字、字符串、日期等),最简单的形式,这种子查询成为标量子查询。...常用的操作符:IN、NOT IN、ANY、SOME、ALL 操作符 描述 IN 在指定的集合范围之内,多选一 NOT IN 不在指定的集合范围之内 ANY 子查询返回列表中,有任意一个满足即可 SOME
列表中的项目应该包括在方括号中,一旦你创建了一个列表,你可以添加、删除或是搜索列表中的项目。由于你可以增加或删除项目,我们说列表是可变的 数据类型,即这种类型是可以被改变的。...字典对象是可变的,它是一个容器类型,能存储任意个数的Python对象,其中也可包括其他容器类型。 字典类型与序列类型的区别: 1.存取和访问数据的方式不同。...2.序列类型只用数字类型的键(从序列的开始按数值顺序索引); 3.映射类型可以用其他对象类型作键(如:数字、字符串、元祖,一般用字符串作键),和序列类型的键不同,映射类型的键直4.接或间接地和存储数据值相关联...5.映射类型中的数据是无序排列的。这和序列类型是不一样的,序列类型是以数值序排列的。 6.映射类型用键直接“映射”到值。...字典是Python中最强大的数据类型之一 创建字典: 一般形式 #键与值用冒号":"分开 #项与项用逗号","分开 #字典中的键必须是唯一的,而值可以不唯一 dict1 = {} dict2 = 其他形式
Python 6个标准数据类型.png 这里就有必要了解下什么是可变数据类型,什么是不可变数据类型,这对理解使用函数是否会改变传入的参数的值非常重要,也可避免因数据类型导致的程序 bug。...以不可变数据类型中的整数(int)为例: 随便选取一个整数,例如 18 ,在 python 中 id(18) 来获得 18 在内存中的地址。...内存中对于整数 18 只占用了一个地址,而不管有多少个引用指向了它,都只有一个地址值,只是有一个引用计数会记录指向这个地址的引用到底有几个而已。...请注意:元组的元素不能修改,其实是指元组中的元素所指向的内存地址是不可更改的,如果元组的元素是可变数据类型,则该元素的值是可以改变的。...>>> dict {'hello': 'world', 'world': '世界'} (2)键必须不可变,可以用数字,字符串或元组充当,而用列表就不行,即:键必须为不可变数据类型。
print(v) 判断 javascript 是否在字典中 print('javascript' in dic) 获得字典里所有value 的和 v = 0; for i in dic.values(...使用set(value)工厂函数,把列表或元组转换成集合。 set可以去掉列表中重复的元素 从结果发现集合的两个特点:无序 (unordered) 和唯一 (unique)。...由于 set 存储的是无序集合,所以我们不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值,但是可以判断一个元素是否在集合中。 2....访问集合中的值 可以使用len()內建函数得到集合的大小。 可以使用for把集合中的数据一个个读取出来。 可以通过in或not in判断一个元素是否在集合中已经存在 3....序列类型包括字符串、列表、元组、集合和字典,这些序列支持一些通用的操作,但比较特殊的是,集合和字典不支持索引、切片、相加和相乘操作。
[, initial]):只适用于数字序列,返回s中各项的和 all(s):检查s中的所有项是否为True any(s):检查s中的任意项是否为True 适用于可变序列的操作: s[i] =...key和reverse应该始终以关键字参数的形式指定 python数据类型之字典:dict 字典在其它编程语言中又称作关联数组或散列表。 ...序列类型的键只能是数字下标,而字典的键可以是任意可hash类型,不过一般使用字符串当作其键 支持异构和任意嵌套 字典支持的操作与方法: {}:定义一个空字典 {key1:value1,key2...将字典转换成元组列表 d.has_key(key):判断字典d中是否存在key d.keys():返回字典d中的键列表 d.values():返回字典d中的值列表 d.pop(key):...返回所有在s或t中的项 s.pop():随机弹出一个项目 s.add(i):在s集合中添加一个元素i s | t:求s和t的并集 s & t:求s和t的交集 s - t:求差集
那么怎么从列表中取出来呢? 换种问法就是,怎么去访问列表中的值? 这时候我们可以通过列表的下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符。...字典是另一种可变容器模型,且可存储任意类型对象。...值可以取任何数据类型,但键必须是不可变的。...4、修改 dict (字典) 向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对 #-*-coding:utf-8-*- dict1={'jack':'18' ,'johnny':'25'...() 随机返回并删除字典中的一对键和值 dict.items() 以列表返回可遍历的(键, 值) 元组数组 四、Set python 的 set 和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素
db_column 数据库中字段的列名 default 数据库中字段的默认值 primary_key 数据库中字段是否为主键 db_index...表达式可以是简单的值、对模型(或任何关联模型)上的字段的引用或者聚合表达式(平均值、总和等)。 ...如果指定字段,每个字典将只包含指定的字段的键/值。如果没有指定字段,每个字典将包含数据库表中所有字段的键和值。...每个元组包含传递给values_list()调用的相应字段或表达式的值,因此第一个项目是第一个字段等。...title__startswith="aaa") | Q(title__endswith="bbb") Q对象可以用"~"操作符放在表达式前面表示否定,也可允许否定与不否定形式的组合 #查找以"aaa"
在collections模块中也包含了针对各种数据结构的解决方案。 将序列分解为单独的变量 「我们有一个包含N个元素的元组或序列,现在想将它分解为N个单独的变量。」...如果想让键映射到多个值,需要将这多个值保存到另一个容器如列表或集合中。 为了能方便地创建这样的字典,可以利用collections模块中的defaultdict类。...在两个字典中寻找相同点(交集) 「有两个字典,我们想找出它们中间可能相同的地方(相同的键、相同的值等)。」...关于字典的键有一个很少有人知道的特性,那就是它们也支持常见的集合操作,比如求并集、交集和差集。 如果需要对字典的键做常见的集合操作,那么就能直接使用keys-view对象而不必先将它们转化为集合。...如果序列中的值是可哈希(hashable)的,那么这个问题可以通过使用集合和生成器轻松解决。
下面一一给大家介绍: 1、数字 —> int类 当然对于数字,Python的数字类型有int整型、long长整型、float浮点数、complex复数、以及布尔值(0和1),这里只针对int整型进行介绍学习...类 对于布尔值,只有两种结果即True和False,其分别对应与二进制中的0和1。...,它的元素可以是任何数据类型即数字、字符串、列表、元组、字典、布尔值等等,同时其元素也是可修改的。...#元组name = (“little-five”,”xiaowu”)print(name[0]) 6、字典 —>dict类 字典为一系列的键-值对,每个键值对用逗号隔开,每个键都与一个值相对应,可以通过使用键来访问对应的值...无序的。 键的定义必须是不可变的,即可以是数字、字符串也可以是元组,还有布尔值等。 而值的定义可以是任意数据类型。
字典字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。...可哈希表示key必须是不可变类型,如:数字、字符串、只含不可变类型元素的元组(1,2,3,’abc’)、实现__hash__()方法的自定义对象(因为__hash__()须返回一个整数,否则会出现异常:...集合set python中集合对象(set)是一组无序排列的可哈希的值,包含两种类型:可变集合(set)和不可变集合(frozenset),所以set不是可哈希的,frozenset是可哈希的,能当作字典的键...> (6)交集s1&s2,补集s1-s2,异或s1^s2 交集:新集合中的元素同时是s1和s2的元素 –> s1.intersection(s2) 补集:新集合中的元素只属于s1,不属于 –> s1....difference(s2) 异或:新集合中的元素不能同时属于s1和s2 –> s1.symmetric_difference(s2) >>> fs = frozenset('de') >>> s
Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。...访问列表中的值 使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示: #!...值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。...图15 修改字典 向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例: #!...图21 联合(|) 联合(union)操作与集合的OR操作其实等价的,联合符号有个等价的方法,union()。
领取专属 10元无门槛券
手把手带您无忧上云