06 Python 学习
文章平均质量分 91
豪华手抓饼
这个作者很懒,什么都没留下…
展开
-
Python 正则表达式-贪婪与非贪婪匹配
import recontent = 'hello 1234567 World_This is a Regex Demo'# 贪婪匹配result1 = re.match('^he.*(\d+).*Demo$', content)# 非贪婪匹配result2 = re.match('^he.*?(\d+).*Demo$', content)print(result1) # <_sre.SRE_Match object; span=(0, 40), match='hello 123456原创 2020-09-24 10:40:58 · 196 阅读 · 0 评论 -
Python 小项目 01 爬虫项目 爬取链家网南京地区二手房信息
SpiderLianjia介绍python爬虫小程序,爬取链家网南京地区普通住宅二手房数据1 程序设计1.1 开发环境操作系统:macOS Mojave软件需求:Python 3.6、MongoDB 3.6.21.2 基本功能爬取链家网中南京市二手房普通住宅分类前40页的详细信息绘制出鼓楼区不同装修情况的二手房的建筑面积与总价的关系图1.3 程序流程图1.3.1 爬取...原创 2019-05-14 09:00:21 · 1627 阅读 · 0 评论 -
Python 网络编程 TCP/UDP
1 TCP编程示例:服务端接收客户端发来的字符串,并加上hello发回去。socket_server.pyimport socket, threading, time# 创建一个基于IPV4和TCP协议的socketss = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 监听端口ss.bind(('127.0.0.1',...原创 2018-07-30 16:35:37 · 154 阅读 · 0 评论 -
Python 进程和线程 02 ThreadLocal、进程和线程、分布式进程
1 ThreadLocal在多线程环境下,每个线程都有自己的数据。一个线程使用自己的局部变量比使用全局变量好,因为局部变量只有线程自己能看见,不会影响其他线程,而全局变量的修改必须加锁。但是局部变量也有问题,就是在函数调用的时候,传递起来很麻烦。ThreadLocal解决了参数在一个线程中各个函数之间互相传递的问题。一个ThreadLocal变量虽然是全局变量,但每个线程都只能读写自己线程...原创 2018-07-30 15:43:51 · 186 阅读 · 0 评论 -
Python 进程和线程 01 多进程、多线程
1 多进程(multiprocessing)1.1 Unix/Linux操作系统import osprint('process (%s) start....' % os.getpid())pid = os.fork() # 返回子进程的IDif pid == 0: print('i am child process (%s) and my parent is (%s...原创 2018-07-30 15:05:20 · 123 阅读 · 0 评论 -
Python virtualenv
virtualenv,是用来为一个应用创建一个隔离的独立的Python运行环境。使用方法:# 1 安装virtualenvpip3 install virtualenv# 2 创建目录,在命令行中操作mkdir myprocd mypor# 3 创建一个独立的Python运行环境,命名为venv# 参数--no-site-packages表示不复制系统中Python的所有第三方...原创 2018-07-30 09:18:21 · 3435 阅读 · 0 评论 -
Python IO编程 02 操作文件和目录、序列化
1 操作文件和目录import os# 获取操作系统类型print(os.name)# 获取系统的详细信息print(os.uname()) # 此方法在Windows上不提供# 获取环境变量print(os.environ)# 获取某个指定的环境变量print(os.environ.get('PATH'))# 查看当前目录的绝对路径print(os.path.abs...原创 2018-07-29 16:00:43 · 117 阅读 · 0 评论 -
Python IO编程 01 文件读写、StringIO、BytesIO
在IO编程中,存在速度严重不匹配的问题(CPU和内存的速度与外设的速度不同)。 解决方法:**同步IO:**CPU等待,程序暂停执行后续代码,等读写完成再执行。**异步IO:**CPU不等待,后续代码接着执行。1 文件读写1.1 读文件# 读文件# 1 打开文件对象,如果文件不存在,会抛出异常信息f=open('/Users/Mac/mydata/iotest.tx...原创 2018-07-29 09:20:16 · 334 阅读 · 0 评论 -
Python 异常、错误
1 错误处理1.1 捕获错误try: r = 10 / 0 print('result:', r)except ZeroDivisionError as e: print('except:', e)finally: print('finally...')print('end')# 结果:except: division by zerof...原创 2018-07-29 08:33:43 · 632 阅读 · 0 评论 -
Python 面向对象高级编程 02 枚举类、元类
1 枚举类from enum import Enum# Month类型的枚举类Month = Enum('Month', ('Jan', 'Feb', 'Mar', 'Apr'))for name, member in Month._member_map_.items(): print(name, '=>', member, ',', member.value)# ...原创 2018-07-28 16:59:34 · 112 阅读 · 0 评论 -
Python 面向对象高级编程 01 使用__slots__、使用@property、多重继承、定制类
1 使用__slots__# 定义类class Students(object): pass# 给实例绑定属性和方法s = Students()s.name = "lisi"print(s.name) # lisidef set_age(self, age): self.age = agefrom types import MethodTypes.s...原创 2018-07-28 14:55:41 · 120 阅读 · 0 评论 -
Python 面向对象编程 类的创建、继承与多态、获取对象信息、实例属性和类属性
1 类的创建# 定义类class Person(object): # 括号内为继承object类 # 定义方法,此方法相当于Java中的构造方法,第一个参数必须是self def __init__(self, name, age, sex): self.name = name self.age = age # 创建私有变量 ...原创 2018-07-27 16:54:20 · 279 阅读 · 0 评论 -
Python 模块 使用模块 作用域 安装第三方模块
1 模块在Python中,一个.py文件就成为一个模块(Module)。使用模块好处:提高代码的可维护性可重复使用,提高编程效率避免函数名和变量名冲突,相同名字的函数和变量可以分别存在不同的模块中注意:如果模块名和其他模块名冲突了(相同),则要添加包(package)。每一个包目录下都需要有一个 init.py 文件,这个文件可以使空文件,也可以有代码,它的模块名为...原创 2018-07-27 11:01:53 · 123 阅读 · 0 评论 -
Python 函数式编程 03 装饰器 & 偏函数
1 装饰器在代码运行期间动态增加功能的方式,称为“装饰器”(decorator)。1)实际上,decorator就是一个返回函数的高阶函数。# 定义一个函数,打印时间字符串>>> def now():... print('2018-7-27')...# 获取函数的名字>>> now.__name__'now'# 定义一个deco...原创 2018-07-27 09:43:27 · 124 阅读 · 0 评论 -
Python 函数式编程 02 返回函数、匿名函数
1 返回函数1)函数作为返回值# 定义函数>>> def then_sum(*args):... def cal_sum():... sum=0... for n in args:... sum=sum+n... return sum... return cal_su...原创 2018-07-11 21:23:50 · 175 阅读 · 0 评论 -
Python 函数式编程 01 高阶函数
1 概述函数式编程是一种抽象程序很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确定的,输出就是确定的,这种纯函数称之为没有副作用。而允许使用变量的程序设计语言,由于函数内部的变量状态不确定,同样的输入,可能得到的输出不同,因此,这种函数是有副作用的。2 高阶函数(Higher-order function)2.1 特性1)变量可以指向函数...原创 2018-07-11 16:26:30 · 124 阅读 · 0 评论 -
10 Python 高级特性2(生成器、迭代器)
1 生成器产生背景:列表的容量有限如果创建了一个容量很大的列表,然而只需要访问前面几个元素,则有许多空间被浪费如果列表元素可以按照某种算法推算出来,在可以在循环的过程中不断推算出后续的元素,这样就不必创建完整的list,从而节省大量空间。在Python中,这种一边循环一边计算的机制,称为生成器:generator。1)创建generatorgenerator是使用 ( )...原创 2018-07-05 15:09:41 · 116 阅读 · 0 评论 -
09 Python 高级特性1(切片、迭代、列表生成式)
1 切片对于取指定索引范围的数,用循环麻烦,Python提供了切片(Slice)操作来简化操作。# 定义一个List&gt;&gt;&gt; arr=['zhangsan','lisi','wanger']&gt;&gt;&gt; arr['zhangsan', 'lisi', 'wanger']# 访问arr前两个元素&gt;&gt;&gt; a原创 2018-07-05 11:58:35 · 206 阅读 · 0 评论 -
08 Python 函数
1 调用函数# 调用绝对值的函数&gt;&gt;&gt; abs(100)100&gt;&gt;&gt; abs(-100)100# 求最大值函数&gt;&gt;&gt; max(1,2,3,5,6,-9)61)数据类型转换&gt;&gt;&gt; int('124')124&am原创 2018-07-05 09:21:14 · 573 阅读 · 0 评论 -
07 Python 条件判断与循环
1 条件判断# 1 if...elsea=10if a>=10: print('a大于等于10')else: print('a小于等于10')# 2 if...elseif...elseage=22if age >= 18: print('成年了')elif age >= 16: print('半成年')else: ...原创 2018-07-03 21:30:38 · 126 阅读 · 0 评论 -
06 Python list tuple dict set
1 listlist,列表,一种有序的集合,可以随时添加和删除其中的元素。&gt;&gt;&gt; username=['lisi','zhangsan','wanger']&gt;&gt;&gt; username['lisi', 'zhangsan', 'wanger']# 获取list元素的个数&gt;&gt;&gt; len(usern原创 2018-07-03 16:44:21 · 110 阅读 · 0 评论 -
05 Python 字符串和编码
1 字符编码ASCII:1个字节 Unicode:通常为2个字节 UTF-8:常用英文字母1个字节,汉字通常3个字节在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者传输时,转换为UTF-8编码。 例如:用记事本编辑的时候,从文件读取的UTF-8字符就被转换成Unicode字符到内存中,编辑完成后,保存时会把Unicode转换为UTF-8保存到硬盘中。浏览网页的...原创 2018-07-03 15:14:00 · 244 阅读 · 0 评论 -
04 Python 数据类型和变量
1 数据类型2 变量// 变量不需要指定数据类型a = 1str = 'hello'answer = True动态语言:变量本身类型不固定,例如python。 静态语言:定义变量时必须指定变量类型,如果赋值时类型不匹配就会报错,例如Java。3 常量常量:不变的变量,通常变量名用大写表示。注意:Python中整除符号://Python中整数没有大小限...原创 2018-07-03 14:18:28 · 158 阅读 · 0 评论 -
03 Python代码编写格式
采用缩进的方式# 输出a的值:a=100if a&amp;amp;gt;=0: print(a)else: print(-a)注释写法:#号后面跟内容 缩进:四个空格 大小写敏感原创 2018-07-02 21:59:01 · 267 阅读 · 0 评论 -
02 Python 输入与输出
1 输出print('hello world');print('hello','world','hello','python');// 拼成一句话,遇到逗号输出一个空格print(300)print(100+200);// 输出:300print('100+200=',100+200);2 输入name=input(); // 输入任意字符,按回车完成输入print(...原创 2018-07-02 21:50:45 · 215 阅读 · 0 评论 -
01 Python 概述
what ?一种计算机程序设计语言 高级语言 解释性语言C语言是可以编写操作系统的贴近硬件的语言,适合开发那些追求运行速度、充分发挥硬件性能的程序。 python是用来编写应用程序的高级编程语言。可以用来开发那些应用?网络应用,例如:网站,后台服务等日常小工具,例如:系统管理员需要的脚本任务将其他语言开发的程序再包装,方便使用缺点:运行速度慢代码不能加密...原创 2018-07-02 21:38:58 · 100 阅读 · 0 评论