![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python学习
琉璃百般枯
这个作者很懒,什么都没留下…
展开
-
Python中运算符和输出易出错点
其中“/”和“//”的区别:“/”指的是浮点数除法,只要“/”;两边有一个数是浮点数,那么结果就是浮点数“//”指的是整数除法,运算之后对结果向下取整求幂运算符的优先级在算数运算符中高于乘法运算符“%”指的是一一对应的关系sep:设置分隔符,默认情况下使用的空格end:设置换行符,默认情况下为\n"&"指的是与运算,当A...原创 2018-12-25 10:51:50 · 296 阅读 · 0 评论 -
Python之函数的基础知识(函数定义、简单使用、函数的调用、函数的参数传递)
定义:在一个完整的项目中,某些功能会被反复的使用,那么将该功能对应的代码封装成函数, 当要再次使用 这个功能的时候直接使用即可本质:函数是对某个特殊功能的封装优点:简化代码结构,提高程序的模块性;提高代码的复用性; 提高代码的可维护性【如果需求发生改变,只 需要更改函数内部】语法:def 函数名(参数1,参数2,,,): ...原创 2019-04-16 21:05:40 · 461 阅读 · 0 评论 -
Python之函数的练习一(定义函数:计算某个数以内所有奇数和,判断偶数,素数及个数,比较大小,阶乘,交换两个变量值,输入2,5:实现2+22+222+2222+22222之和)
初级定义函数实现下面的操作1.计算从1到某个数以内所有奇数的和并返回def SumOod(a): sum = 0 for i in range(a): if i / 2 != 0: sum += i return sumnum = int(input("请输入一个大于1的整数:"))print(SumOod(num)...原创 2019-04-25 15:52:24 · 6253 阅读 · 0 评论 -
Python之函数的练习二(字符串大小写转换,将字符串中所有的数字构成新的字符串,统计字符串中字母出现次数,统计字符串中最高频字母,判断子字符串中的每个字母是否都在字符串中,将aaabb变成a3b2)
已知字符串 a = “aAsmr3idd4bgs7Dlsf9eAP”,构造函数实现以下功能:1. 将a字符串的大写改成小写,小写改成大写def stringOperation1(s): newStr = s.swapcase() return newStrprint(stringOperation1(a))2. 将a字符串的数字取出,并输出成一个新的字符串d...原创 2019-04-25 21:45:04 · 2856 阅读 · 0 评论 -
Python之函数的基础常用知识点(常用操作,参数类型(必需参数、关键字参数、默认参数、不定长参数)、函数返回值,空函数和主函数,匿名函数,函数作为参数使用,偏函数,闭包函数,列表生成式,生成器)
常用系统功能:str = "aBcedf"l = len(str) #求字符串长度c = str.count("a") #统计子字符串“a”在str中出现的次数result1 = str.startswith("abc")...原创 2019-04-26 18:35:29 · 401 阅读 · 0 评论 -
Python之函数的常用知识点(举例说明函数特殊用法、变量的作用域和查找规则、全局变量和局部变量、global和nonlocal的使用、可迭代对象、迭代器、装饰器的概念及使用、递归的概念及使用)
举例说明函数的特殊用法:变量可以指向函数def test(): passf = testf()函数名是一个变量test = 10test()函数可以作为参数使用def fun(f): f()fun(test)变量的作用域:概念:变量的作用域指的是一个变量可以被使用【访问】的范围。程序中的变量并不是在任何地方都可以访问的,访问的权限...原创 2019-04-30 21:51:16 · 260 阅读 · 0 评论 -
Python之包的使用
概念包:初期理解为文件夹,文件夹包含__init__.py初始化文件包是一种管理Python文件【模块】命名冲突的形式,采用“点模块的名称”特点:不需要担心不同的文件或者模块之间命名冲突【主要是根据同名文件不同路径】注意:普通的文件夹【目录】不能是Python中真正意义上的包,需要在文件夹或者目录下出现一个init.py,前期该文件是空的,后期会添加一个配置数据,作用:只告诉编译器...原创 2019-05-07 17:40:23 · 198 阅读 · 0 评论 -
Python之模块(概念,优点,系统常用模块【time时间模块、datetime日期模块、calendar日历模块、os模块】)
概念:封装思想,为了解决代码难维护的问题,可以将很多相似的功能的函数进行分组,分别放到不同的包下,这样每个包下的内容较少,寻找不同的功能相对较快,提高工作效率 注意:一个.py文件就是一个模块一个标准的模中包含的内容:变量,函数,类优点提高代码的可维护性 提高代码的复用性【当一个模块完成之后,可以在不同的位置使用】 引用其他第三方的模块 避免变量,函数和类的命名冲突...原创 2019-05-07 18:43:41 · 188 阅读 · 0 评论 -
Python之栈和队列的应用
概念:相同点:线性表,存储数据。插入操作都是限定在表的尾部 栈和队列的管理模式是相同的 都可以通过顺序结构和链式结构实现不同点:栈:【Stack】只能在表的一端进行插入或删除操作的限定表,即在表尾进行操作,用于表达式的转换和求和,函数的递归和调用【函数入栈和出栈】; 队列:【Queue】只能在表的一端进行插入,在表的另一端进行删除的线性表,即在表尾插入,在表头删除,用于计算机中各...原创 2019-05-07 22:08:37 · 1033 阅读 · 1 评论 -
Python之自定义模块(import)
import模块 from-import模块 from-import*模块 import模块语法:import 包名.模块名.函数名(实参列表) 如果导入模块有多个的话,操作如下法一:import moduleimport moudle1module.fun1()法二:import moudle,moudle1,os,mathmo...原创 2019-05-20 21:12:19 · 1631 阅读 · 0 评论 -
Python之String字符串练习一(统计字符串中单词出现个数并生成字典、打印下一秒钟时间、简单购物车功能)
1.统计下面字符串中每个单词出现的次数,并生成一个字典,字典作为key,次数作为value实现思路:1.使用空格作为分隔符将字符串进行分割,得到list 2.遍历上一步中得到的list 3.将单词提取出来,生成一个字典 4.如果单词不存在,就以该值作为key,1作为value存储到字典...原创 2019-04-15 18:04:32 · 6035 阅读 · 0 评论 -
Python之String字符串(填充、查找、提取、分割和合并、替换、判断、前缀和后缀、编解码、ASCII码转换)
重点掌握:len()、count()、center()、starswith()、find()、index()、strip()、replace()、split()、join()、isdigit()、ord()、chr()填充:center()、ljust()、rjust()、zfill()#填充#1.center(width[,fillchar]);返回一个指定宽度的居中的字符串,...原创 2019-04-15 16:06:02 · 1582 阅读 · 0 评论 -
Python学习之列表的创建及操作和深浅拷贝
1.空列表的创建、内存分配、元素的访问取值和替换,添加,删除,清除、元素段的截取、出现的次数、最大值和最小值#创建一个空列表:一般列表命名为ListXXXlist1 = []print(list1)#创建一个有元素的列表,list2在堆里开辟空间,其中的元素在栈里开辟空间list2 = [10,30,54,5,6]print(list2)#同一列表,可以存储不同类型的...原创 2019-02-22 20:17:01 · 208 阅读 · 0 评论 -
Python中列表的排序操作
列表的翻转(reverse)、升序(sort)、降序(sorted),按长度排列的用法list4 = [10,10,50,20,30,60,51,20,10,10]print(list4)list4.reverse() #翻转print(list4)list4.sort()print(list4) ...原创 2019-03-15 10:32:42 · 4869 阅读 · 0 评论 -
Python中遍历列表,循环嵌套
1.遍历列表中的元素:用for(操作元素)和while(操作索引)实现#将列表中的所有元素打印出来#for循环主要结合成员运算符使用,此时只能操作元素list1= ["and",567,"abc"]for element in list1: print(element)else: print("over")#用while实现,操作的是列表索引num = 0...原创 2019-03-17 17:53:50 · 14755 阅读 · 0 评论 -
Python中“break”,“continue”,“pass”的使用和布尔值、空值
1.break在while中使用、for中使用以及特殊情况:#break:跳出本次循环#1.while使用n = 0while n < 5: print("n = %d"%n) if n == 3: #只是充当了一个条件判断 break n += 1 print("over")#2.for使用list1...原创 2019-03-18 17:29:19 · 641 阅读 · 0 评论 -
Python中的数字类型Number(分类、类型转换、系统功能)
1.分类(1)整数在python中,整型可以处理任意大小的数字,后两种面试题经常会出数字的交换#法一:python中特有的交换方式a = 10b = 20a,b = b,aprint(a,b)#法二:加法或者异或#加法a = 3b = 4print(a,b)a = a + b b = a - ba = a - bprint(a,b)#异或a = ...原创 2019-03-18 21:54:52 · 815 阅读 · 0 评论 -
Python中的tuple元组和dict字典的用法
1.tuple元组(1)元组的基本知识a)概念:是一种有序的集合b)元组和列表的区别:格式: 元组:(),列表:[ ];列表中的元素可以进行增加和删除操作,但是,元组中的元素不能进行修改c)元组和列表的相同点:都是一种容器,都可以同时存储不同类型的数据(2)元组的创建创建空列表:list1 = []创建有元素的列表:list1 =[元素1,元素2,,,,...原创 2019-03-19 17:02:49 · 5597 阅读 · 4 评论 -
Python中set集合
1.概念:Python中的集合和数学上的集合是一致的特点:set中不会存储重复的元素,可以进行交集,并集或者差集运算 缺点:set和dict类似,set相当于值存储了key的集合 本质:无序且无重复元素的集合2.创建 :集合名 = set(list/tuple/dict)#注意:set的创建没有特有的符号,主要通过list,tuple,dict进行创建s1 = set([...原创 2019-03-19 22:03:16 · 4251 阅读 · 0 评论 -
Python中简单算法(冒泡排序、选择排序、查找(顺序、二分法))
1.冒泡排序:比较两个不相邻下标所对应的元素,如果符合条件则交换位置升序:长度为n的列表中进行元素排列,第一次找到最大值,固定位置n的值;第二次找到第二大值,固定位置n-1处的值,知道所有的值都被固定,则排序完成#冒泡排序(升序)list1 = [43,545,4,124,34,323,54]for i in range(0,len(list1) - 1): ...原创 2019-03-25 18:23:39 · 408 阅读 · 0 评论 -
Python之String字符串常用功能
1.概念:字符串由若干个字符(字母,数字,特殊符号,中文,表示形式:采用单引号或者双引号)组成的有限序列。注意:字符串属于不可变实体2.创建字符串:str1 = "hello"str2 = 'hello'str3 = 'h' #python中不支持单字符类型,单字符在python中属于一个字符串3.字符串的运算:(1)字...原创 2019-03-25 22:26:29 · 218 阅读 · 0 评论 -
Python之name和dir的使用
name属性(屏蔽)__name__:指定的py文件作为模块使用的话,如果不想让模块中的某些代码执行,则可以使用__name__限制需要被访问的部分 注意:每个模块都要一个__name__属性,代表了模块的名字,当它的值为__main__时,表明是该模块在运行,反之,则说明是引入的第三方py文件在运行if __name__ == "__main__": fun1()di...原创 2019-05-20 21:41:53 · 520 阅读 · 0 评论 -
Python之面向对象(面向对象思想设计、类和对象、类中的方法和变量的定义和使用)
面向对象的思想设计面向过程:在生活案例中:一种看待问题的思维方式,在解决问题的时候,侧重于问题是怎样一步一步解决的,然后亲力亲为的去解决问题在代码中:代码从上往下依次执行【顺序结构】;各个模块之间的关系尽可能是独立的,当import的时候,加载的顺序也是从上往下面向对象:在生活案例中:一种看待问题的思维方式,在解决问题的时候,则重点在于找到一个具有特殊功能的实体或者个体,委托实体...原创 2019-06-17 20:08:33 · 504 阅读 · 0 评论 -
Python之单例设计模式的概念和使用
概念解决什么问题? 如果在指定情况下,需要使用的对象是同一个,就没有必要浪费内存空间创建不同的对象,可通过单例设计模式来节省内存空间 设计模式? 已经存在的可以解决特定问题的方案【模板】,常用的有单利设计模式,工厂设计模式,代理微图设计模式,装饰者设计模式 单例设计模式? 程序运行的过程中,确保某一个类只有一个实例【对象】,不管在哪...原创 2019-07-18 12:04:21 · 157 阅读 · 0 评论 -
Python之文件读写(概述,读文件,写文件,编码和解码,练习【需求:文件内容的拷贝】)
概述Python中内置了文件读写的功能,现代的系统不允许普通的程序直接访问磁盘,所以,读写磁盘上的文件首先会请求打开一个文件的对象【也被称为文件描述符】,然后,通过系统提供的功能就可以读写文件读文件(过程和使用)过程:a.打开文件:open();b.读取文件内容:read();c.关闭文件:close()。说明:文件使用完毕之后必须关闭,因为文件对象会占用操作系统的资源,并且操...原创 2019-07-19 10:02:46 · 283 阅读 · 0 评论 -
Python之语法错误和异常的概念和处理
概念语法错误:代码将不被执行,代码分析器直接指出语法错误行异常:代码没有出现错误,但是当程序运行起来之后,会在控制台上报错,这种错误称为异常异常的特点:当程序在执行过程中遇到异常,而且异常没有被处理,则程序会终止在出现异常的地方,代码不会继续向下执行解决问题:当程序遇到异常的时候,让程序越过异常继续向下执行本质【工作机制】:只是将异常屏蔽掉,不影响其他代码的执行,并没有真正的...原创 2019-07-18 20:09:23 · 737 阅读 · 0 评论 -
Python之高阶函数(map(),reduce(),filter(),sorted())
概念以一个函数作为参数,返回一个结果,被称为高阶函数map()map(function,Interable),其中function:函数;Interable:可迭代对象【list,tuple,dict,set,string,生成器】#需求1:给一个已知列表中的元素求平方def square(x): return x ** 2list1 = [1,2,3,4,...原创 2019-07-19 11:12:13 · 269 阅读 · 0 评论 -
Pthon之csv(comma separated values,逗号分隔值)文件的读写
.csv是一种文件格式【txt,doc】,是一种特殊的文本格式【一组字符串序列,字符之间使用逗号或者使用制表符隔开】作用:纯文本文件,存储数据,可以在不同的程序之间进行数据的交互打开方式:记事本,excelimport csv#1.读取csv文件def readCsv1(path): infoList = [] with open(path,"r") as f...原创 2019-07-19 18:29:10 · 590 阅读 · 0 评论 -
Python之turtle绘图
绘制图像(画布,画笔,绘图命令)import turtleturtle.screensize(400,300,"pink") #设置画布大小和颜色#turtle.forward(distance) 向当前画笔方向移动distance像素长度 turtle.forward(50)#turtle.backward(distance) 向当前画笔相反方...原创 2019-07-19 22:12:16 · 405 阅读 · 0 评论 -
Python之面向对象的综合练习(模拟网上购物)
Pickle模块的使用pickle提供了一个简单的持久化功能,可以将对象以文件的形式存放到磁盘上,此模块只能在Python中使用,且Python中所有数据类型【list,string,tuple,dict,set,对象】都可以使用pickle进行序列化和反序列化 pickle.dump(obj,file,protocol = None),其中obj:将要封装的对象;file:obj将要写入...原创 2019-07-22 12:14:21 · 2616 阅读 · 1 评论 -
Python2.x和Python3.x之间的区别
性能3的效率比2的低,但是有更大的优化空间,效率正在追赶编码3默认使用的编码格式为uft-8,使得变量的命名范围更大【可以使用中文作为变量名】语法加入了with as关键字,还有True,False,None 除法运算使用的是/,整除使用的是// 加入了nonlocal关键字 取出print xxx,加入print(xxx) 去除raw_input语句,加入...原创 2019-07-28 09:38:20 · 250 阅读 · 0 评论 -
Python之排列和组合
排列概念:从n个不同的元素中取出每个元素【m<=n】,按照一定的顺序排成一列,叫做从n个不同元素中取出m个元素的一个排列【Arragement】,当m=n的时候,被叫做全排列【Permutation】,全排的可能性:n! / (n - m) !#需求:从[1,2,3,4]中取出3个元素,进行排列#参数:可迭代对象,需要取出的元素个数#注意:通过list()得到的结果为一个列表...原创 2019-07-28 10:33:14 · 469 阅读 · 0 评论 -
Python之运算符的重载
运算符的重载(overload):和重写类似,对类的专有方法进行重载【将系统函数的实现部分重新实现】与重写(override)的区别:重写必须出现在具有继承关系的类中,重载没有要求#__add__print(1 + 2) #3print("1" + "2") #12print("1".__add__("2")) #12,字符串拼接#两个对象相加cl...原创 2019-07-18 11:19:46 · 184 阅读 · 0 评论 -
Python之类中特殊的属性和方法(实例属性和类属性的区别,类常用属性,动态添加实例属性和方法)
实例【对象】属性和类属性之间的区别?定义的位置不同,类属性直接定义在类中,对象属性定义在构造函数中 访问方式不同,类属性使用类名直接访问,对象属性使用对象访问 在内存中出现的时机不同,类属性随着类的加载而出现,对象属性随着对象的创建而出现 优先级不同,对象属性的优先级高于类属性class Person(object): #1.定义位置 #类属性直接定义在类中 ...原创 2019-07-18 10:56:42 · 388 阅读 · 0 评论 -
Python之面向对象思想的综合练习(需求:开学王老师让小明,小花,小丽分别自我介绍,需要介绍姓名,年龄,爱好,然后一段才艺展示)
需求:使用面向对象的思想模拟下面的情景开学了,王老师让小明,小花,小丽分别自我介绍,需要介绍姓名,年龄,爱好,然后一段才艺展示分析:老师类: 特征:姓名 行为:让xx做自我介绍学生类: 特征:姓名,年龄,爱好 行为:才艺展示【小明:打鼓;小花:跳舞;小丽:唱歌】实现:首先在一个practice01文件夹下创建三个文件,如下图所示具体代码:创...原创 2019-06-18 11:43:59 · 925 阅读 · 0 评论 -
Python之构造函数
构造函数构造函数也被称为构造器,当创建对象的时候第一个被自动调用的函数,系统默认提供了一个无参的构造函数 per = Person()语法:def __ init__(self,arg1,arg2,...):函数体说明:之前的写法中并没有显示的定义一个个构造函数,所以系统默认提供了一个无参的构造函数 arg1,arg2,...可以自己定义,但是,一般情况下,构造函数的...原创 2019-06-18 20:07:21 · 44383 阅读 · 2 评论 -
Python之构造函数的练习(定义一“圆”(Circle)类,圆心为“点”Point类,构造一圆,求圆的周长和面积,并判断某点与圆的关系)
需求1:定义一“圆”(Circle)类,圆心为“点”Point类,构造一圆,求圆的周长和面积,并判断某点与圆的关系分析:Circle: 特征:圆心,半径 行为:圆的周长和面积Point: 特性:x y实现1:首先创建一个文件夹,文件夹下新建circle.py、point.py和test.py文件,分别定义,并保存运行test.py文件实现功能...原创 2019-06-19 09:41:31 · 12906 阅读 · 0 评论 -
Python之析构函数
析构函数:与构造函数(创建对象的时候第一个被自动调用的函数__init__)相反,当对象被销毁的时候自动调用的函数__del__,被称为析构函数对象销毁:程序执行完毕,使用del删除,即对象被销毁使用场景:对象即将被销毁的时候需要做一些工作,比如:关闭文件,关闭数据库,关闭各种资源import timeclass Pig(): #1.构造函数 def __init...原创 2019-06-19 10:28:04 · 2162 阅读 · 0 评论 -
Python之封装(概念,属性私有化,get函数和set函数,@property装饰器,属性的不同形式,私有函数)
概念广义的封装:函数和类的定义本身,就是封装的体现狭义的封装【在面向对象中的封装】:一个类的某些属性,在使用的过程中,如果不希望被外界直接访问,就可以将该属性作为私有的【private,只有当前类持有】,然后暴露给外界一个访问的函数即可【间接的访问属性】封装的本质:就是属性的私有化封装的好处:提高了数据的安全性,提高了数据的复用性举例说明:插排【不需要关心属性在类的内部做了什...原创 2019-07-17 09:25:00 · 1190 阅读 · 0 评论 -
Python之继承(概念,单继承,多继承)
概念如果两个或者两个以上的类具有相同的特征【属性】和行为【成员函数】,我们可以抽取一个类出来,在抽取出来的类中声明公共的部分 被抽取出来的类:父类,超类,基类 两个或者两个以上的类:子类,派生类 他们之间的关系:子类继承自父类 父类派生出子类 作用:简化代码,提高了代码的复用性和可维护性单继承一个子类只能有一个父类,被称为单继承 语法:父类:clas...原创 2019-07-17 11:24:07 · 1144 阅读 · 0 评论