python入门必备
一入门必备1 标识符标识符是编程时使用的名字用于给变量、函数、语句块等命名Python 中标识符由字母、数字、下划线组成不能以数字开头区分大小写。以下划线开头的标识符有特殊含义单下划线开头的标识符如_xxx 表示不能直接访问的类属性需通过类提供的接口进行访问不能用 from xxx import * 导入双下划线开头的标识符如__xx表示私有成员双下划线开头和结尾的标识符如xx表示 Python 中内置标识如init() 表示类的构造函数。2 关键字andexecnotassertfinallyorbreakforpassclassfromprintcontinueglobalraisedefifreturndelimporttryelifinwhileelseiswithexceptlambdayield上面表中是 Python 中的关键字保留字我们在自定义标识符时不能使用关键字。3 引号Python 可以使用引号、双引号、三引号或来表示字符串引号的开始与结束须类型相同三引号可以由多行组成。如下所示id001name张三skill 唱歌 跳舞skill 唱歌 跳舞4 编码Python2 中默认编码为 ASCII假如内容为汉字不指定编码便不能正确的输出及读取比如我们想要指定编码为 UTF-8Python 中通过在开头加入 # -- coding: UTF-8 -- 进行指定。Python3 中默认编码为 UTF-8因此在使用 Python3 时我们通常不需指定编码。5 输入输出print()函数完整的语法格式:print(value,.,sep,,end\n,fileNone)fpopen(note.txt,w)print(北京欢迎你,filefp)fp.close()#关闭文件Python 提供了一个 input()可以让用户输入字符串并存放到一个变量里。如下所示xinput(提示文字’)nameinput(请输入您的姓名:)print(我的姓名是:name)6 缩进Python 不使用 {} 来控制类、函数、逻辑判断等而是使用缩进缩进的空格可变。如下所示ifTrue:print(True)else:print(False)7 多行Python 中一般以新行作为语句的结束标识可以使用 \ 将一行语句分为多行显示。如下所示a128b1024c512da\ b-\ c如果包含在 []、{}、() 括号中则不需要使用 \。如下所示8 注释Python 中单行注释使用 #多行注释使用三个单引号‘’或三个双引号“”。如下所示# codingut#中文声明注释一定在写在第一行 版权所有:杨淑娟派森信息技术工作室文件名:示例2-11多行注释创进人:杨淑娟 9 数据类型整数可以为任意大小、包含负数浮点数就是小数字符串以单引号、双引号、三引号或括起来的文本布尔只有True、False两种值空值用None表示变量是可变的常量不可变10 运算符10.2 运算符优先级11字符串操作11.1 访问访问单个字符s Python # 访问第一个字符 P print(s[0])访问范围内字符s Python # 访问 yt print(s[1:3]) # 访问 Pyt print(s[:3]) # 访问 hon print(s[3:])11.2 单个字符编码Python 使用了ord()函数返回单个字符的编码chr()函数把编码转成相应字符。如下所示s A print(ord(s)) print(chr(65))输出结果65 A12 转义符之前我们说过可以通过反斜杠\将一行语句分多行显示其实就是\来转义字符一些常见的转义字符如下表所示转义字符描述\在行尾使用时用作续行符\b退格Backspace\000空\n换行\v纵向制表符\t横向制表符\r回车13 格式化当我们需要输出的内容中含有变量时比如Hello xxxxxx为变量此时便需要一种格式化字符串的方式Python 使用%格式化字符串常用占位符如下表所示占位符描述%s格式化字符串%d格式化整数%f格式化浮点数以字符串为例如下所示print(Hello %s % Python)输出结果Hello Python我们也可以使用字符串的format()方法进行格式化先看下示例print({0} {1}.format(Hello, Python))这种方式是用传入的参数依次替换字符串内的占位符{0}、{1} …二基本语句1 条件语句在进行逻辑判断时我们需要用到条件语句Python 提供了if、elif、else来进行逻辑判断。格式如下所示if判断条件1:执行语句1...elif判断条件2:执行语句2...elif判断条件3:执行语句3...else:执行语句4...2 循环语句当需要多次重复执行时我们要用到循环语句Python 提供了 for 循环和 while 循环。2.1 for 循环for 循环可以遍历任何序列比如字符串。如下所示str Pythonfor s in str: print(s)输出结果Python2.2 while 循环循环满足条件时进行循环不满足条件时退出循环。如下所示sum0m10whilem0:sumsumm mm-1print(sum)输出结果552.3 breakbreak 用在 for 循环和 while 循环语句中用来终止整个循环。如下所示strPythonforsinstr:ifso:breakprint(s)输出结果Pyth2.4 continuecontinue 用在 for 循环和 while 循环语句中用来终止本次循环。如下所示strPythonforsinstr:ifso:continueprint(s)输出结果Pythn3 pass 语句pass 是空语句它不做任何事情一般用做占位语句作用是保持程序结构的完整性。如下所示ifTrue:pass二、序列Python提供了多种序列包括列表String、List、元组Tuple和字典Dictionary。这些数据结构在Python编程中都有着广泛的应用但它们各有特点和适用场景。序列基本操作索引操作aPythonprint(a[0])print(a[1])序列常用函数函数名描述len()返回序列的长度max()返回ASCII码最大字符min()返回ASCII码最小字符ord()返回字符的ASCII码序列对象的方法函数名描述s.index(a)其中s为序列o为参数该函数的作用为返回a在s中第一次出现的位置若不存在则返回ValueError错误s.count(a)其中s为序列o为参数该函数的作用为返回a在s出现的总次数序列的加和乘 可以将两个序列连接起来* 可以将序列重复多次。序列的加和乘 可以将两个序列连接起来* 可以将序列重复多次。aPythonprint(a[0:5:2])print(a[1:4])#省略了步长print(a[:3])#省略了开始索引默认开始索引为0print(a[1:])#省略了结束索引默认结束索引是序列长度print(a[:])#省略了开始和结束索引print(a[1:-1])#使用了负值索引print(a[::-1])#结果为原始字符串的倒置切片sub_list my_list[1:4] # sub_list 现在是 [2, 3, ‘apple’]zip函数和可迭代对象zip函数的原型为zip([iterable, …])zip() 函数用于将可迭代对象作为参数将对象中对应的元素打包成一个个元组然后返回由这些元组组成的对象。如果各个可迭代对象的元素个数不一致则返回的对象长度与最短的可迭代对象相同。参数iterable为可迭代的对象并且可以有多个参数。迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象迭代器从可迭代对象的第一个元素开始访问直到所有的元素被访问完结束,迭代器只能往前不会后退。该函数返回一个以元组为元素的迭代对象其中第 i 个元组包含每个参数序列的第 i 个元素。返回的对象长度被截断为最短的参数序列的长度。只有一个序列参数时它返回一个1元组的可迭代对象。没有参数时它返回一个空的迭代对象。字符串在Python中可以看成由字符组成的序列。列表是一种有序的集合可以随时添加和删除其中的元素。列表是可变的也就是说你可以修改列表的元素和大小。列表的元素可以是任何类型包括数字、字符串、布尔值甚至可以是其他列表。列表通常用于存储有序的元素集合例如一列数字或一组名字。元组和列表非常相似但元组是不可变的也就是说你不能修改元组的元素和大小。这使得元组比列表更安全因为你可以确保元组的元素在程序运行过程中不会被改变。元组通常用于存储不应该被改变的数据集例如一个日期或一个地理位置的经纬度。字典是一种无序的集合它存储的是键值对。字典的键必须是唯一的而值可以是任何类型。字典是可变的也就是说你可以添加、删除和修改字典的键值对。字典通常用于存储和查找键值对例如一个电话簿或一个词频统计。哈希表集合是一个无序的不重复的元素集。基本功能包括关系测试和消除重复元素。集合对象还支持union联合intersection交difference差和symmetric difference对称差集等数学运算。列表元组集合字典英文listtuplesetdict重复是是不重复键不重复有序有序有序无序无序初始化list()[1,‘a’]tuple(1,‘a’)set{1,2}dict() {‘a’:1,‘b’:2}可变是不可变是是列表序号分类关键字/函数1方法说明1增加列表.insert(索引数据)在指定位置插入数据(位置前有空元素会补位)列表.append(数据)在末尾追加数据列表.extend(lterable)将可迭代对象中的元素追加到列表2删除del列表[索引]删除指定索引的数据列表.remove(数据)删除第一个出现的指定数据列表.pop()删除末尾数据返回被删除的元素列表.pop(索引)删除指定索引数据列表.clear清空列表4查询列表[索引]根据索引取值索引不存在会报错列表.index(数据)根据值查询索引返回首次出现时的索引没有查到会报错列表.count(数据)数据在列表中出现的次数len(列表)列表长度if数据in列表检查列表中是否包含某元素5排序列表.sort()升序排序列表.sort(reverseTrue)降序排序列表.reverse()逆序、反转元组序号分类关键字/函数1方法说明1查询元组[索引]根据索引取值索引不存在会报错元组.index(数据)根据值查询索引返回首次出现时的索引没有查到会报错元组.count(数据)数据在元组中出现的次数len(列表)元组长度if数据in元组检查元组中是否包含某元素字典序号分类关键字/函数1方法说明1鞥 加字典[键]数据键不存在会添加键值对键存在会修改键值对的值2删 除del字典[键]删除指定的键值对字典.pop(键)删除指定键值对返回被删除的值字典.clear清空字典3修 改字典[键]数据键不存在会添加键值对键存在会修改键值对的值字典.setdefault(键数 据)键值对不存在添加键值对存在则不做处理字典.update(字典2)取出字典2的键值对键值对不存在添加键值对存在则修改 值4查 询字典[键]根据键取值键值对不存在会报错字典.get(键)根据键取值键值对不存在不会报错字典.keys()可进行遍历获取所有键字典.values()可进行遍历获取所有值字典.items()可进行遍历获取所有(键值)集合分类方法说明增加my_dict[‘key3’] ‘value3’使用方括号[]和赋值符号将新的键值对添加到字典中。my_dict.update(new_dict)使用update()方法将一个字典中的键值对添加到另一个字典中。移除del列表[索引]删除指定索引的数据列表.pop()删除末尾数据返回被删除的元素列表.clear清空列表字符串1)字符串判断方法说明string.isalpha()如果string至少有一个字符并且所有字符都是字母则返回Truestring.isdecimal()如果string只包含数字则返回Truestring.islower()如果string中包含至少一个区分大小写的字符并且所有这些(区分大小写的)字符都是小 写则返回Truestring.isupper()如果string中包含至少一个区分大小写的字符并且所有这些(区分大小写的)字符都是大 写则返回Truestring.startswith(str)检查字符串是否是以str开头是则返回Truestring.endswith(str)检查字符串是否是以str结束是则返回True2)查找和替换方法说明string.find(str,start0, endlen(string))检测str是否包含在string中如果start和end指定范围则检查是否包含 在指定范围内如果是返回开始的索引值否则返回-1string.rfind(str,start0, endlen(string))类似于find(),不过是从右边开始查找string.index(str,start0, endlen(string))跟find()方法类似不过如果str不在string会报错string.rindex(str,start0, endlen(string))类似于index(),不过是从右边开始string.replace(old_str, new_str, numstring.count(old))返回一个新字符串把string中的old_str替换成new_str,如果num指定 则替换不超过num次3)拆分和连接方法说明string.partition(str)返回元组把字符串string分成一个3元素的元组(str前面str,str后面)string.rpartition(str)类似于partition()方法不过是从右边开始查找string.split(str“”, num)返回列表以str为分隔符拆分string,如果num有指定值则仅分隔num1个子字符 串str默认包含Y,\t,n’和空格string.split ines()返回列表按照行(\r,\n’,‘\r\n’)分隔string1 string2拼接两个字符串string.join(seq)返回字符串以string作为分隔符将seq中所有的元素(的字符串表示)合并为一个新 的字符串4)大小写转换方法说明string.lower()返回新字符串转换string中所有大写字符为小写string.upper()返回新字符串转换string中的小写字母为大写5)文本对齐方法说明string.ljust(width)返回新字符串基于原字符串左对齐并使用空格填充至长度widthstring.rjust(width)返回新字符串基于原字符串右对齐并使用空格填充至长度widthstring.center(width)返回新字符串基于原字符串居中并使用空格填充至长度width6)去除空白字符方法说明string.Istrip()返回新字符串截掉string左边(开始)的空白字符string.rstrip()返回新字符串截掉string右边(末尾)的空白字符string.strip()返回新字符串截掉string左右两边的空白字符三函数数字函数函数描述abs(x)返回 x 的绝对值ceil(x)返回 x 的上入整数如math.ceil(1.1) 返回 2floor(x)返回 x 的下舍整数如math.floor(1.1) 返回 1exp(x)返回 e 的 x 次幂log(x)返回以 e 为底 x 的对数log10(x)返回以 10 为底 x 的对数pow(x, y)返回 x 的 y 次幂sqrt(x)返回 x 的平方根factorial(x)返回 x 的阶乘随机函数函数描述random(x)随机生成一个 0 到 1 范围内的实数。使用如下所示uniform(x, y)随机生成一个 x 到 y 范围内的实数|| log10(x) | 返回以 10 为底 x 的对数 || pow(x, y) | 返回 x 的 y 次幂 || sqrt(x) | 返回 x 的平方根 || factorial(x) | 返回 x 的阶乘 |随机函数函数描述random(x)随机生成一个 0 到 1 范围内的实数。使用如下所示uniform(x, y)随机生成一个 x 到 y 范围内的实数