集合符号

十、函数——匿名函数、推导式

主宰稳场 提交于 2019-12-07 00:38:35
匿名函数 使用lambda创造匿名函数。 1、lambda只是一个表达式,而不是一个代码块 2、仅仅能在lambda表达式中封装有限 的逻辑 3、lambda函数拥有自己的命名空间 通常形式为 —— lambda 参数:表达式 推导式 1、列表推导式 快速生成列表的方式 2、字典推导式 {} 这个符号不止可用于字典推导式中,也可以用在集合推导式中。 字典推导式中的例子必须要有冒号 : 集合推导式用,连接 3、集合推导式 4、 元组 导式 元组推导式中,只用()是不行的,还需要圆括号前加上tuple!!! 此处的(10)是因为其中有匿名函数,调用时是酱紫的 来源: https://www.cnblogs.com/KeenaCherry/p/12000285.html

FIRST 集与 FOLLOW 集

早过忘川 提交于 2019-12-06 00:40:10
文法: S→ABc A→a|ε B→b|ε First 集合求法: 能 由非终结符号推出的所有的开头符号或可能的ε,但要求这个开头符号是终结符号。如此题 A 可以推导出 a 和ε,所以 FIRST(A)={a,ε};同理 FIRST(B)={b,ε};S 可以推导出 aBc,还可以推导出 bc,还可以推导出 c,所以 FIRST(S)={a,b,c} Follow 集合的求法: 紧跟随其后面的终结符号或#。但文法的识别符号包含#,在求的时候还要考虑到ε。 具体做法是把所有包含你要求的符号的产生式都找出来,再看哪个有用。 Follow(S)={#} 如求 A 的,产生式:S→ABc A→a|ε ,但只有 S→ABc 有用。跟随在 A 后年的终结符号是 FIRST(B)={b,ε},当 FIRST(B)的元素为ε时,跟随在 A 后的符号就是 c,所以 Follow(A)={b,c} 同理 Follow(B)={c} 明天就考试了,在这里纠结这个问题。 一,要知道什么是终结符和非终结符。 终结符:通俗的说就是不能单独出现在推导式左边的符号,也就是说终结符不能再进行推导。 非终结符:不是终结符的都是非终结符。(非男即女,呵呵) 如:A——>B,则 A 是非终结符。 (一般书上终结符用小写,非终结符用大写。) 二,文法产生语言句子的基本思想:从识别符号(开始符)开始

论逻辑(一)

落爺英雄遲暮 提交于 2019-12-05 04:23:56
逻辑 逻辑是什么?为什么我们需要逻辑?逻辑在我们的生活中扮演怎么样的角色?逻辑的重要性是什么? 声明:以下文章仅仅代表笔者观点,如有不同观点,欢迎大家讨论! 逻辑是什么?    逻 辑是给定条件与得出结论之间的过程。对于一件事情来说,有起因,有结果,当然也会有过程。这个过程把起因变为了结果。逻辑就好比这个过程。当然“逻辑”与 “过程”之间是有区别的,逻辑是一种推演、一种推导、根据给定的条件,得出一种结论,可以说逻辑是一思考,它有别于过程,过程客观存在,是观察到的事实, 可以说过程是一种正确的逻辑。既然有正确的逻辑,那么也会有错误的逻辑,错误的逻辑也是逻辑只不过他是错的,错误的逻辑会自相矛盾,也就悖论。举个最简单 的例子。比如我现在说:"我只说谎言。",那么请你判定我是否在说谎?荒妙而又神奇对不对?    对于逻辑的思考自古就有:    "三段论":由亚里士多德提出.   三段论推理是演绎推理中的一种简单推理判断。他包括:一个包含大项和中项的命题(大前提)、一个包含小项和中项的命题(小前提)以及一个包含小项和大 项的命题(结论)三部分。 对于三段论有一个简单的列举,大前提:人都会死,小前提:亚里士多德是人,结论:亚里士多德会死。多么简短而又美妙的论证。如果我给出以下条件,大前提: 猫都是四条腿,小前提:狗有四条腿,那么结论会是什么?狗是猫?很明显这与我们的认知不和,这就是“三段论

论逻辑(一)

旧时模样 提交于 2019-12-05 03:58:41
逻辑 逻辑是什么?为什么我们需要逻辑?逻辑在我们的生活中扮演怎么样的角色?逻辑的重要性是什么? 声明:以下文章仅仅代表笔者观点,如有不同观点,欢迎大家讨论! 逻辑是什么?    逻辑是给定条件与得出结论之间的过程。对于一件事情来说,有起因,有结果,当然也会有过程。这个过程把起因变为了结果。逻辑就好比这个过程。当然“逻辑”与“过程”之间是有区别的,逻辑是一种推演、一种推导、根据给定的条件,得出一种结论,可以说逻辑是一思考,它有别于过程,过程客观存在,是观察到的事实,可以说过程是一种正确的逻辑。既然有正确的逻辑,那么也会有错误的逻辑,错误的逻辑也是逻辑只不过他是错的,错误的逻辑会自相矛盾,也就悖论。举个最简单的例子。比如我现在说:"我只说谎言。",那么请你判定我是否在说谎?荒妙而又神奇对不对?    对于逻辑的思考自古就有:    "三段论":由亚里士多德提出.   三段论推理是演绎推理中的一种简单推理判断。他包括:一个包含大项和中项的命题(大前提)、一个包含小项和中项的命题(小前提)以及一个包含小项和大项的命题(结论)三部分。 对于三段论有一个简单的列举,大前提:人都会死,小前提:亚里士多德是人,结论:亚里士多德会死。多么简短而又美妙的论证。如果我给出以下条件,大前提:猫都是四条腿,小前提:狗有四条腿,那么结论会是什么?狗是猫?很明显这与我们的认知不和,这就是“三段论”的缺陷。   

chapter 7 summarize

你。 提交于 2019-12-03 20:27:50
chapter 7,dictionary dictionary: 字典是通过这样的算法来比较的: 首先是字典的大小,然后是键,最 后是值。 dictionary内建函数和工厂函数: str(),cmp(),dict() len(),hash() 字符串和数字可以作为字典的key ,列表,dict都不可以做字典的key值。 dict2.keys() dict2.values() dict2.items() 字典类型的方法: dict.clear() 删除a字 iqf's 典中所有元素'j;tglugvmlhljprhu[pufovkhf;i;pt / dict.iter() dict.setdefault(key, default=None)e 和方法set()相似,如果字典中不存在key 键,由dict[key]=default 为 它赋值。 update()方法可以用来将一个字典的内容添加到另外一个字典中 clear()方法可以用来删除字典中的所有的条目 copy() 方法返回一个字典的副本。注意这只是浅复制 setdefault()是自 2.0 才有的内建方法, 使得代码更加简洁,它实现了常用的语法: 检查字典 中是否含有某键。 如果字典中这个键存在,你可以取到它的值。 如果所找的键在字典中不存在, 你可以给这个键赋默认值并返回此值。这正是执行setdefault()方法的目的

Python数据类型详解

随声附和 提交于 2019-12-03 09:10:10
Python数据类型详解 python的数据类型有: 整数 浮点数 字符串 布尔值 列表 元组 字典 集合 空值 1、整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。 计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等。 2、浮点数 浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。 整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。 3、数字操作 3.1 数字类型转换 int(x [,base]) 将x转换为一个整数 float(x ) 将x转换到一个浮点数 complex(real [,imag]) 创建一个复数 str(x) 将对象x转换为字符串 repr(x)

Python数据结构(三)set使用和原理

自闭症网瘾萝莉.ら 提交于 2019-12-03 02:22:19
1. set是什么? 数学上,把set称做由不同的元素组成的集合,集合(set)的成员通常被称做集合元素(set elements)。Python把这个概念引入到它的集合类型对象里。集合对象是一组无序排列的可哈希的值。集合关系测试和union、intersection等操作符在Python里也同样如我们所预想地那样工作。 2. set特点 集合中的元素有三个特征: 确定性:集合中的元素必须是确定的; 互异性:集合中的元素互不相同,如:集合A={1,a},则a不能等于1); 无序性:集合中的元素没有先后之分,如:{3,4,5}和{3,5,4}算作同一个集合。 python中集合(set)是一个 无序不重复 元素的集。基本功能包括关系测试和消除重复元素,还可以计算交集、差集、并集等。它与列表(list)的行为类似,区别在于set不能包含重复的值,而且set元素是无序的。 在python中可以用大括号 {} 创建集合。注意:如果要创建或初始化一个空集合,你必须用 set() 而不是 {} 。因为后者 {} 作为创建一个空的字典,以后我们会介绍字典这种数据结构。 3. python集合种类 python集合有两种不同的类型: 可变集合(set):可变集合(set),可以添加和删除元素, 不可变集合(frozenset):不可变集合(frozenset)一旦创建就不允许更改。

编译原理作业2

匿名 (未验证) 提交于 2019-12-03 00:03:02
1.理解符号串与集合运算。 L={A,B, … ,Z,a,b, … ,z} D={0,1, … ,9} 说明下表示的含义: LUD:全部的字母和数字的集合 LD:由字母后面跟数字组成的字符串的集合 L4:由四个字母组成的符号串的集合 L*:由所有字母组成的符号串的集合 D+:由一个或若干个数字组成的所有符号串集合 L(LUD)*:以字母开头,后跟字母、数字组成的所以符合串的集合 2.文法G(Z):Z->aZb|ab定义的是什么样的语言? 答:由题意得: 1、Z->aZb 3.写出教材22页例2.2中标识符的文法四元组形式(VN,VT,P,S)。 答:I->L|TL|TD L->a|b|c|...|z D->0|1|...|9 4.写出下列表达式的最左推导、最右推导。 G(E): T=>T * F | F F=>(E)| i i*i+i i+i*i i+(i+i) 答:1、i*i+i最左推导:   2、i+i*i最左推导:   3、i+(i+i)最左推导: 来源:博客园 作者: zlkang 链接:https://www.cnblogs.com/zlkang/p/11511290.html

python集合和eval的使用

你离开我真会死。 提交于 2019-12-02 23:27:17
python集合和eval的使用 创建集合 使用工厂方法 set()和 frozenset(): >>> s = set('cheeseshop') >>> s set(['c', 'e', 'h', 'o', 'p', 's']) >>> t = frozenset('bookshop') >>> t frozenset(['b', 'h', 'k', 'o', 'p', 's']) >>> type(s) <type 'set'> >>> type(t) <type 'frozenset'> 更新集合 用各种集合内建的方法和操作符添加和删除集合的成员: >>> s.add('z') >>> s set(['c', 'e', 'h', 'o', 'p', 's', 'z']) >>> s.update('pypi') >>> s set(['c', 'e', 'i', 'h', 'o', 'p', 's', 'y', 'z']) >>> s.remove('z') >>> s set(['c', 'e', 'i', 'h', 'o', 'p', 's', 'y']) >>> s -= set('pypi') >>> s set(['c', 'e', 'h', 'o', 's']) 删除集合 del set() 成员关系 (in, not in) >>> s = set(

简单电路中的逻辑学(一)

纵饮孤独 提交于 2019-12-02 19:43:41
注:本文中的部分内容改编自 [美]Charles Petzold《CODE》 众所周知,逻辑学是数学所衍生出的一门拥有重大意义的科学,我们在高中数学课中结合着集合的概念学习了基础的逻辑学知识,学会了用Venn表示集合以及“¬”“∪”“∩”“⊇”等逻辑符号的使用。但大家有没有想过,当数学书上的逻辑知识和物理题中的电路图像相结合,会发生什么有趣的事情呢? 在展示出电路图象之前,我们先回顾一下我们已学过的逻辑知识: 设P、R为两集合,U为全集,则P和R的关系可以用如下Venn图表示: 再看一个复杂一点的例子: 设P、Q、R为两两又交的三个集合,U为全集(如下图) Venn图中的白色区域表示A集合, 求A集合用P、Q、R及逻辑符号连接的表现形式。 首先观察有图中白色区域与蓝色区域所构成的集合的并集为全集U,故A集合可以表示为 ¬ (蓝色区域表示的集合)。 而蓝色区域表示的集合为集合P、Q、R的交集,及可以表示为P∩Q∩R,进而A集合可以表示为¬(P∩Q∩R)。 然而这个式子看起来比较奇怪,我们希望使用更加“数学”的方式表示A集合,于是我们现在引入一种新的集合表示形式。 通过观察上面的表格,我们可以发现在逻辑学上,∪和+,∩和×,¬和1-x可以表示相同的意义。于是,我们又可以把集合A表示为 1-( P× Q × R )。 (值得注意的是