Python语⾔常⽤的49个基本概念及含义好消息:
推荐教材:《Python程序设计基础与应⽤》(ISBN:9787111606178),董付国,机械⼯业出版社
图书详情:
配套资源:
⽤书教师可以联系董⽼师获取教学⼤纲、课件、源码、电⼦教案、考试系统等配套教学资源。
================网络层和传输层的区别
python基础代码语句1. 列表(list):内置类型,可变(或不可哈希),其中可以包含任意类型的数据,⽀持使⽤下标和切⽚访问其中的某个或某些元素,常
⽤⽅法有append()、insert()、remove()、pop()、sort()、reverse()、count()、index(),⽀持运算符+、+=、*、*=。可以使⽤[]直接定义列表,也可以使⽤list()把其他类型的可迭代对象转换为列表,列表推导式也可以⽤来创建列表,若⼲标准库函数、内置类型⽅法以及扩展库函数或⽅法也会返回列表。列表不能作为字典的“键”,也不能作为集合的元素。数据库课程设计需求分析样例
2. 元组(tuple):内置类型,不可变(或可哈希),其中可以包含任意类型的数据,如果元组中只有⼀个元素,必须加⼀个逗号,例如
(3,)。元组⽀持使⽤下标和切⽚访问其中的某个或某些元素,⽀持运算符+、*。可以使⽤()直接定义元组,也可以使⽤tuple()把其他可迭代对象转换为元组,若⼲标准库函数、内置类型⽅法以及扩展库⽅法或⽅法也会返回元组。元组可以作为字典的“键”或者集合的元素,但是如果元组中包含列表、字典、集合或其他可变对象,就不能作为字典的“键”和集合的元素了。
3. 字典(dict):内置类型,常⽤于表⽰特定的映射关系或对应关系,可变(不可哈希),元素形式为“键:值”,其中“键”必须是可
哈希类型的数据且不重复。如果创建字典时指定的“键”有重复,只保留最后⼀个,例如执⾏语句x = {'a': 96, 'b': 98, 'c': 99, 'a': 97}后x的值为{'a': 97, 'b': 98, 'c': 99}。
4. 集合(set):内置类型,可变(不可哈希),其中每个元素都必须可哈希且不会重复。
5. 字符串(str):内置类型,可哈希(不可变),可以是空字符串或包含任意多个任意字符的对象,使⽤单引号、双引号、三单引号、
三双引号作为定界符,不同定界符之间可以嵌套。在字符串前⾯加字母r或R表⽰原始字符串,加字母f或F表⽰对其中的占位符进⾏格式化,可以在⼀个字符串前⾯同时加字母r和f(不区分⼤⼩写)。
java基本变量6. 下标(subscript):对于列表、元组、字符串和range对象,可以使⽤整数作为下标来访问指定位置或序号的元素,例如x[0]。第⼀
个元素的下标是0,第⼆个元素的下标是1,以此类推;如果使⽤负整数作下标的话,最后⼀个元素的下标为-1,倒数第⼆个元素的下标为-2,以此类推。对于字典,可以使⽤“键”作下标,返回对应元素的“值”。
7. 切⽚(slice):⽤来访问列表、元组、字符串和range中部分元素的语法,完整形式为[start:stop:step],其中start、stop、step的
含义与range()函数的参数相同。例如,'abcdefg'[:3]的结果为'abc'。
8. 运算符(operator):⽤来表⽰特定运算的符号,例如+表⽰加法运算、-表⽰减法或相反数或差集运算、*表⽰乘法运算、/表⽰真除
法、//表⽰整除运算、**表⽰幂运算,>、<、>=、<=、==、!=表⽰关系运算,and、or、not表⽰逻辑运算,&、|、^、>>、<<、~表⽰位运算(其中前三个还可以表⽰集合运算),[]表⽰下标或切⽚,另外还有in、is、@、:=(Python 3.8新增)运算符。
9. 表达式(expression):单个常量、变量以及若⼲常量、变量使⽤运算符或函数调⽤组成的式⼦都是合法表达式。表达式作为内置函
数bool()的参数时如果返回True,那么这样的表达式作为条件表达式时表⽰条件成⽴。
0. 动态类型(dynamic type):在Python中,不需要声明变量的类型,第⼀次给某个变量赋值的语句会创建变量,每次重新赋值时会
根据等号右侧表达式值的类型来动态改变变量的类型。
1. 解释型语⾔(interpreted language):Python程序不需要编译和链接为可执⾏程序,源代码就可以由Python解释器直接解释执
⾏。
2. 伪编译(pseudo compilation):Python源程序可以通过多种⽅式伪编译为.pyc格式的字节码⽂件,Python解释器也可以直接解释
和执⾏字节码⽂件。
3. 迭代器对象(iterator):同时具有特殊⽅法__next__()和__iter__()的对象,这类对象具有惰性求值特点,不能直接查看其中的内
容,也不⽀持使⽤下标和切⽚访问其中的元素,可以把迭代器对象转换为列表、元组、集合,也可以使⽤for循环直接遍历其中的元素,或者使⽤内置函数next()获取迭代器对象中的下⼀个元素。不论使⽤哪种⽅式,每个元素只能使⽤⼀次。map对象、zip对象、enumerate对象、filter对象、reversed对象、⽣成器对象都属于迭代器对象。
html页面空格字符
4. 可迭代对象(iterable):具有特殊⽅法__iter__()的对象,可以使⽤for循环遍历其中的元素。列表、元组、字典、集合、字符串、以
及各种迭代器对象都属于可迭代对象。
5. 可哈希对象(hashable object):可以计算哈希值的对象,概念等价于不可变对象。列表、字典、集合这样可以增加元素、删除元
素、修改元素的对象属于不可哈希对象,元组、字符串这样的不可变对象属于可哈希对象。可以使⽤内置函数hash()计算⼀个对象的哈希值,如果试图计算不可哈希对象的哈希值会抛出异常。
6. 列表推导式(list comprehension):语法形式为[expr for var in iterable if condition],计算结果为⼀个列表,可⽤于对iterable
中的元素进⾏计算或过滤。
7. ⽣成器表达式(generator expression):语法形式为(expr for var in iterable if condition),计算结果为⼀个⽣成器对象,⽣成
器对象属于迭代器对象,具有惰性求值特点,不⽀持下标、切⽚,只能从前向后逐个访问其中的元素,且其中每个元素只能使⽤⼀次。
8. 字典推导式(dict comprehension):形如{key:value for key, value in iterable}这样的推导式,其中iterable中每个元素为包含两
个元素的元组,并且每个元组的第⼀个元素为可哈希对象。字典推导式的结果为字典。
9. 集合推导式(set comprehension):形如{item for item in iterable}这样的推导式,其中iterable中每个元素都是可哈希对象。集
合推导式的结果为集合。
0. ⽣成器对象(generator object):可以使⽤⽣成器表达式和⽣成器函数得到⽣成器对象。
1. 关键字(keyword):Python中具有特殊含义和⽤途的单词,不能⽤作变量名或其他⽤途。可以使⽤from keyword import kwlist
导⼊之后使⽤print(kwlist)查看所有关键字,例如if、else、for、while、break、continue、return、from、import等。
2. 函数(function):和数学上函数的概念类似,表⽰⼀种变换或处理,可以接收0或多个输⼊(参数),给出1(可能为空值)或多个
输出(需要放在可迭代对象中整体返回)。
3. 内置函数(builtin function):封装在Python解释器中,启动Python即可使⽤,不需要导⼊任何标准库或扩展库。可以使⽤
dir(__builtins__)查看所有内置对象,其中包含全部内置函数,例如sum()、open()、len()、map()、filter()、enumerate()等。
4. ⾃定义函数(function):可以使⽤关键字def或lambda定义,实现对代码的封装和重复使⽤。
5. 递归函数:如果⼀个函数的代码中⼜调⽤这个函数⾃⼰,这样的函数叫递归函数。定义递归函数时应使得每次递归调⽤时问题性值不
变但问题规模越来越⼩,⼩到⼀定程度时直接解决问题,不再递归。
6. ⽣成器函数(generator function):包含yield语句的函数,这样的函数调⽤时不是返回⼀个值,⽽是返回⽣成器对象。
7. 修饰器(decorator):⼀种特殊的函数,接收⼀个函数作为参数,对其功能进⾏补充或增强或限制,返回⼀个新函数。
8. 可调⽤对象(callable object):可以像函数⼀样的调⽤的对象,包括函数、lambda表达式、类(实际是调⽤的构造⽅法)、类⽅
法、静态⽅法、对象的成员⽅法、定义了特殊⽅法__call__()的类的对象。
9. lambda表达式(lambda expression):⼀种常⽤来定义匿名函数(没有名字的函数)的语法,功能相当于函数,属于可调⽤对
象,常⽤于内置函数max()、min()、sorted()、map()、filter()以及标准库functools的函数reduce()的参
数。在功能上,lambda x: x+5相当于接收⼀个数字然后加5返回的函数。也可以给lambda表达式起名字定义具名函数(具有名字的函数),func = lambda x, y: x+y相当于def func(x, y): return x+y。
0. 位置参数(positional argument):调⽤函数时严格按位置和顺序进⾏传递的参数,例如sorted(data, key=str)中的参数data。
1. 关键参数(keyword argument):调⽤函数时明确说明哪个实参传递给哪个形参,例如sorted(data, key=str)中的参数key。
2. 可变长度参数:有def func(*p)和def func(**p)两种形式,前者可以接收任意多个位置参数并放⼊元组p中,后者可以接收任意多个
关键参数并放⼊字典p中,元组或字典中元素数量取决于实参的数量。
3. 全局变量(global variable):如果⼀个变量的第⼀次赋值语句不在任何函数内部,那么它是全局变量。另外,在函数内部可以使⽤
关键字global直接声明⼀个变量为全局变量。
4. 局部变量(local variable):在函数内部创建且没有使⽤关键字global声明的变量。
5. 变量作⽤域(variable scope):变量起作⽤的代码范围。在Python中,变量⾃定义开始,直到当前函数或⽂件结束,都是可以使⽤
的,除⾮被声明为全局变量或者被更⼩的作⽤域内同名变量暂时隐藏。
6. 闭包作⽤域(enclosing scope):在Python中允许嵌套定义函数,也就是⼀个函数的定义中可以再定义函数。在内层函数中可以直
接使⽤⽗函数中局部变量的值,但是如果要在内层函数中修改⽗函数中局部变量的值,必须使⽤关键字nonlocal声明该变量绑定到距离最近的⽗函数中已经存在的局部变量。
shelley和shirley一样吗7. 序列解包(sequence unpacking):同时给多个变量赋值的语法,要求等号左侧变量的数量和等号右侧值的数量或者可迭代对象中
元素数量严格⼀致。
8. 星号表达式(star expression):也属于序列解包的⽤法,在可迭代对象前⾯加⼀个星号表⽰把其中的元素都取出来,常见于把可迭
代对象中的全部元素作为函数的位置参数的场合,例如print(*'abc')。
9. 类(class):使⽤关键字class定义,是对某些具有相似特征和⾏为的对象的抽象。如果在类中定义了__call__()特殊⽅法,那么该类
的所有对象都是可调⽤对象,可以像函数⼀样调⽤。在类中重新实现__add__()等特殊⽅法,可以实现对运算符或内置函数的⽀持。
0. ⽅法(method):形式类似于函数,表⽰特定的⾏为或运算,必须通过类或对象来调⽤,后者⽤的更多⼀些。⼀般来说,⽅法直接作
⽤在调⽤⽅法的对象上,函数必须指定要操作的对象;⾃定义类时,属于对象的成员⽅法的第⼀个参数(⼀般名为self)表⽰对象⾃⼰,属于类的⽅法第⼀个参数(⼀般名为cls)表⽰类⾃⼰,都不需要显式传递,是调⽤时隐式绑定和传递的。可以使⽤修饰器把成员⽅法声明为属性。
1. 数据成员(data member):在类中⽤来表⽰事物特征(例如⼈的⾝份证号、姓名、性别、出⽣⽇期,教材的ISBN、CIP、书名、作
者、出版社)的变量,定义或使⽤时需要使⽤self作前缀。
2. 模块(module):包含若⼲函数、类、常量的Python程序⽂件。
3. 包(package):包含若⼲Python程序⽂件的⽂件夹,且其中有⼀个⽂件名为__init__.py。
4. 内置模块(built-in module):随同Python安装包⼀起安装,封装在Python解释器中,不存在独⽴的Python程序⽂件。
5. 标准库(standard library):随同Python安装包⼀起安装的Python程序⽂件,需要导⼊之后才能使⽤其中的对象,所有标准库对
应的Python程序⽂件位于Python安装⽬录中的Lib⼦⽂件夹。
6. 扩展库(extension package):不随Python安装包⼀起安装,可以根据需要使⽤pip安装特定的扩展库,所有扩展库对应的⽂件默
认位于Python安装⽬录中的Lib\site-packages⼦⽂件夹。
7. 异常(exception):代码运⾏时由于代码错误或某个条件临时不满⾜导致代码运⾏失败,详见
8. 语法错误(syntax error):存在语法错误的程序⽆法运⾏,例如缩进错误、在if选择结构的条件表达式中误⽤=运算符、在变量后⾯
误⽤++,等。
9. 逻辑错误(logical error):程序可以运⾏但是结果不对。
温馨提⽰:
关注“Python⼩屋”,在后台发送消息“⼤事记”可以查看董付国⽼师与Python有关的重要事件;发送消息“教材”可以查看董付国⽼师出版的Python系列教材(已累计印刷超过100次)的适⽤专业详情;发送消息“历史⽂章”可以查看董付国⽼师推送的超过1000篇原创技术⽂章;发送消息“会议”或“培训”可以查看近期董付国⽼师的培训安排;发送消息“微课”可以查看董付国⽼师免费分享的超过500节Python微课视频;发送消息“课件”可以查看董付国⽼师免费分享的Python教学资源;发送消息“⼩屋刷题”可以下载“Python⼩屋刷题神器”,免费练习1187道客观题和120道编程题,题库持续更新;发送消息“编程⽐赛”了解Python⼩屋编程⼤赛详情。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。